Define remote content profiles
A profile defines variables that you can use to set the build and load paths for both local and remote content.
When you distribute content remotely, you typically need to set different URLs (load paths) for remote content depending on why you want to make a build.
Some examples of such situations include:
- Testing builds
- Local hosting builds
- [CDN builds]
Testing builds
In development, or if you need to test without access to a host, you can treat all the content in your project as local content. For this situation, set the Local and Remote profile variables using the Built-In location.
Local hosting builds
When you set up a host on your local network (or localhost), you need to change the Load Path for the remote groups to reflect the URL of the host. For more information, refer to Set a build and load path.
Builds for CDN
As you get closer to production, you might use a staging server and then, your production Content Delivery Network (CDN). For example if using Cloud Content Delivery, set the Remote profile variable using the Cloud Content Delivery location.
Other profiles
After release, you might want to use different host URLs for beta testing or other purposes.
Rather than configuring the build and load paths every time you build, you can create a different profile and set the variables appropriately. Then, you can change profiles before making a content build without needing to reconfigure the paths.
If you use a script to launch content builds, then you can use the Addressables
API to choose a specific profile for a build. For more information, refer to Starting an Addressables build from a script.
If you have complex URLs, you can reference static fields or properties in profile variables that are evaluated at build or runtime. For example, rather than entering the CCD ProjectID
as a string, you can create an Editor class that provides the information as a static property and reference it as CCDInfo.ProjectID
. For more information, refer to Profile variable syntax.
InternalIdTransformFunc
methods provide an additional method of handling complex URL requirements.
Note
If your remote URL can't be expressed as a static string, refer to Change Addressable load URLs for information about how you can rewrite the URL of assets, including AssetBundles, at runtime.