Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

Showcase My Addressables bug-reports and questions collection

Discussion in 'Addressables' started by Peter77, Jul 4, 2021.

  1. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    UPDATE: I gave up on using Addressable to download data. There are better alternatives, see https://forum.unity.com/threads/my-...nd-questions-collection.1135966/#post-8246757

    I recently started to implement a "data download" feature. The idea is simple:
    1. Game asks remote server if updated content is available
    2. Game downloads updated content
    3. Game shuts down its systems, re-initializes and starts using the updated content
    I'm already failing at point 1 and 2, due to what I believe are issues with Addressables. I also created forum threads for my submitted bug-reports, hoping to put some attention to these issues, because an actual game-release depends on this for me. I need these issues to be fixed like yesterday.

    I created this thread for me to keep an overview of all these issues, as well as questions that occurred while implementing it, and I hope that @TreyK-47 can ask QA to look at the "waiting" reports and ask in the Addressables team to look into the confirmed issues.

    The issues highlighted in red color are the ones that are very important to me.


    ### Waiting (QA did not respond yet)

    (Case 1355053) Addressables.DownloadDependenciesAsync keeps downloading data when storage device has no sufficient free space
    https://forum.unity.com/threads/cas...torage-device-has-no-free-space-left.1150715/

    [WORKAROUND: Use Request Timeout] (Case 1344710) Addressables method calls never complete on Android if hosting service is unreachable
    https://forum.unity.com/threads/cas...id-if-hosting-service-is-unreachable.1129265/

    (Case 1346824) Addressables.DownloadDependenciesAsync PercentComplete seems wrong
    https://forum.unity.com/threads/cas...iesasync-percentcomplete-seems-wrong.1133932/

    (Case 1343032) Updating Localization through Addressables causes System.Exception
    https://forum.unity.com/threads/cas...addressables-causes-system-exception.1125758/


    ### Bugs without report

    ResourceProviders.TextDataProvider+InternalOp.Start causes IndexOutOfRangeException
    https://forum.unity.com/threads/res...tart-causes-indexoutofrangeexception.1223445/


    ### Open questions

    ReadObjectFromByteArray sometimes causes ArgumentOutOfRangeException
    https://forum.unity.com/threads/rea...s-causes-argumentoutofrangeexception.1249882/

    UnauthorizedAccessException: Access to the path "catalog_data1.hash" is denied.
    https://forum.unity.com/threads/una...he-path-catalog_data1-hash-is-denied.1249876/

    Do I have to release failed load operations?
    https://forum.unity.com/threads/do-i-have-to-release-failed-load-operations.1246936/

    Local bundle can't be opened on iOS
    https://forum.unity.com/threads/local-bundle-cant-be-opened-on-ios.1235383/

    InvalidKeyException: Exception of type
    https://forum.unity.com/threads/invalidkeyexception-exception-of-type.1231050/

    (Important) Remote catalog bundle hash sometimes different than generated bundle hash
    https://forum.unity.com/threads/rem...different-than-generated-bundle-hash.1152824/

    (Important) RemoteProviderException: TextDataProvider : unable to load "assets/aa/settings.json"
    https://forum.unity.com/threads/rem...able-to-load-assets-aa-settings-json.1152815/

    How to abort DownloadDependenciesAsync?
    https://forum.unity.com/threads/how-to-abort-downloaddependenciesasync.1205755/

    Seeking for more info on "Non-recursive Dependency Calculation"?
    https://forum.unity.com/threads/see...non-recursive-dependency-calculation.1149020/



    ### Active (confirmed issues by QA)

    (Case 1370072) Bake NavMesh/Occlusion deletes Addressable AssetGroup entries

    (Case 1361433) "Other > Objects" leaking memory

    (Case 1358381) Addressables generates bundles that are not deterministic

    (Case 1343727) Corrupted cached catalog.json causes that no remote catalog can be downloaded anymore

    (Case 1341792) AsyncOperationStatus (eg CheckForCatalogUpdates) returns "Succeeded" for failed calls

    (Case 1358410) Unity sometimes creates new AssetGroups for Localization-String-Tables automatically

    (Case 1370485) 2019.4: Addressbles 1.19.6 content build failure

    (Case 1357228) Addressables "Shader Bundle Naming Prefix" settings don't seem to work

    (Case 1357219) Addressables "Shader Bundle Naming Prefix" setting missing

    (Case 1356555) Addressables documentation: UseAssetBundleCache, UseAssetBundleCrc and UseAssetBundleCrcForCachedBundles all have the same description

    (Case 1350513) Addressables.CheckForCatalogUpdates returns Success for invalid remote location

    (Case 1344164) Addressables Groups window doesn't support Undo/Redo


    ### Fixed (marked as fixed in issue tracker)

    [UNABLE TO REPRODUCE IN 1.19.6] (Case 1357637) ScriptableBuildPipeline does not abort when exception occurs
    https://forum.unity.com/threads/cas...does-not-abort-when-exception-occurs.1143467/

    [UNABLE TO REPRODUCE IN 1.19.6] (Case 1357636) Random editor crash when building Addressables content (USerialize.DeSerializer.ReadObject)
    https://forum.unity.com/threads/cas...s-userialize-deserializer-readobject.1155383/

    [FIXED IN 1.19.6] (Case 1346825) Addressables.DownloadDependenciesAsync doesn't detect error if internet drops
    https://forum.unity.com/threads/cas...oesnt-detect-error-if-internet-drops.1133950/

    [FIXED IN 1.18.13] (Case 1342255) Addressables: Local Hosting "Enable" state resets after AssemblyReload
    [FIXED IN 1.19.6] (Case 1357241) Addressables "MonoScript Bundle Naming Prefix" settings don't seem to work

    [FIXED IN 1.19.6] (Case 1359537) Addressables causes Inspector to lose selected object on property changes

    [FIXED IN 1.19.6] (Case 1357427) buildlayout.txt contains references to monoscripts bundle that doesn't exist

    [FIXED IN 1.19.6] (Case 1355534) Addressables 1.18.15 Inspector performance regression

    [FIXED IN 1.19.4] (Case 1351218) AsyncOperationHandle.WaitForCompletion calls ResourceManager.Update(Time.deltaTime)

    [FIXED IN 1.18.15] (Case 1345708) Addressables Hosting window causes very high CPU usage

    [FIXED IN 1.18.11] (Case 1341756) Addressables 1.18.9 breaks content update functionality

    [FIXED IN 1.18.11] (Case 1342246) Unable to cancel AssetGroup rename operation

    [FIXED IN 1.18.11] (Case 1341687) AddressableAssetSettings not persistent ("Strip Unity Version from AssetBundles")

    [FIXED IN 1.18.12] (Case 1343073) Addressables doesn't ignore excluded files/folders (. prefix or ~ suffix)


    ### By Design


    (Case 1343820) Addressables doesn't detect corrupted local cached files prior loading [HOW CAN THIS BE BY DESIGN?!]
    https://forum.unity.com/threads/cas...ted-local-cached-files-prior-loading.1127348/

    (Case 1341439) Addressables.InitializeAsync returns invalid handle
    https://forum.unity.com/threads/cas...itializeasync-returns-invalid-handle.1121872/

    (Case 1354409) "Strip Unity Version from AssetBundles" does not work
    https://forum.unity.com/threads/cas...sion-from-assetbundles-does-not-work.1149167/

    [Option was moved] (Case 1356869) Addressables "Group Hierarchy with Dashes" setting missing
    https://forum.unity.com/threads/cas...ierarchy-with-dashes-setting-missing.1154141/

    [Regression they can't change anymore] (Case 1365170) AddressableProfileSettings.GetValueByName() no longer returns value in 1.19.4
    https://forum.unity.com/threads/cas...me-no-longer-returns-value-in-1-19-4.1169573/



    ### Missing functionality


    (Important) [FOUND WORKAROUND] How to unload everything currently loaded by Addressables?
    https://forum.unity.com/threads/how-to-unload-everything-currently-loaded-by-addressables.1121998/

    (Important) Another Bundle Mode "Double Pack Separately"
    https://forum.unity.com/threads/asking-for-advice-how-to-manage-asset-groups.1091383/#post-7404026

    How to get download size of content update without updating the catalog first?
    https://forum.unity.com/threads/how...e-without-updating-the-catalog-first.1149461/

    (Unity Cloud Content Delivery) Add --dryrun option to "ucd.exe releases create"
    https://forum.unity.com/threads/add-dryrun-option-to-ucd-exe-releases-create.1160918/

    How to download data while Android/iOS app is minimized or put into background?
    https://forum.unity.com/threads/how...-is-minimized-or-put-into-background.1157039/


    ### Open Questions, but not needed anymore

    How to restart my own Android app through code?
    https://forum.unity.com/threads/how-to-restart-my-own-android-app-through-code.1138333/


    ### Resolved Questions

    How NOT decompress downloaded bundles?
    https://forum.unity.com/threads/how-not-decompress-downloaded-bundles.1205785/

    What exactly is "Retry Count"?
    https://forum.unity.com/threads/what-exactly-is-retry-count.1173908/

    Any reason not to use "Cache Clear Behavior = Clear When When New Version Loaded"?
    https://forum.unity.com/threads/any...r-clear-when-when-new-version-loaded.1157459/

    (Important) How to find the cause why an AssetBundle is being rebuilt?
    https://forum.unity.com/threads/how-to-find-the-cause-why-an-assetbundle-is-being-rebuilt.1164604/

    (Addressables) Difference between "Bundle Dependencies" and "Expanded Bundle Dependencies" in buildlayout.txt?
    https://forum.unity.com/threads/dif...ndle-dependencies-in-buildlayout-txt.1156604/

    (Addressables) Seeking for more info on "Force Unique Provider"?
    https://forum.unity.com/threads/seeking-for-more-info-on-force-unique-provider.1148582/

    (Unity Cloud Content Delivery) "ucd.exe releases create" outputs "Error! cannot create a release: x.bundle is incomplete"
    https://forum.unity.com/threads/ucd...ate-a-release-x-bundle-is-incomplete.1160810/

    (Unity Cloud Content Delivery) "1 bucket per platform" vs "1 bucket for all platforms" benefits and downsides?
    https://forum.unity.com/threads/1-b...all-platforms-benefits-and-downsides.1156976/

    (Unity Cloud Content Delivery) How to create a release with a badge via ucd.exe?
    https://forum.unity.com/threads/how-to-create-a-release-with-a-badge-via-ucd-exe.1141084/

    (Addressables) "Unable to open archive file" errors during Addressables.DownloadDependenciesAsync
    https://forum.unity.com/threads/una...dressables-downloaddependenciesasync.1133971/

    (Unity Cloud Content Delivery) How to move a badge without y/n prompt via ucd.exe?
    https://forum.unity.com/threads/how-to-move-a-badge-without-y-n-prompt-via-ucd-exe.1141087/

    (Addressables) How to get the asset type where an Addressable Key points to?
    https://forum.unity.com/threads/how...e-where-an-addressable-key-points-to.1127489/

    (Addressables) What exactly does the addressables_content_state contain?
    https://forum.unity.com/threads/what-exactly-does-the-addressables_content_state-contain.933351/

    (Addressables) How to have the same bundles as local and remote?
    https://forum.unity.com/threads/how-to-have-the-same-bundles-as-local-and-remote.1118533/

    (Addressables) Extremely slow download via Addressables.DownloadDependenciesAsync and Unity Cloud Content Delivery
    https://forum.unity.com/threads/ext...ync-and-unity-cloud-content-delivery.1133434/

    (Addressables) Seeking for more info on "Unique Bundle IDs"
    https://forum.unity.com/threads/seeking-for-more-info-on-unique-bundle-ids.1120714/#post-7285198

    (Addressables) How to delete the cached catalog files?
    https://forum.unity.com/threads/how-to-delete-the-cached-catalog-files.1128089/

    (Addressables) Where stores Addressables the downloaded assets?
    https://forum.unity.com/threads/whe...s-the-downloaded-assets.1121968/#post-7246106

    (Addressables) How to see if AssetBundle has dependencies to another AssetBundle?
    https://forum.unity.com/threads/how...-dependencies-to-another-assetbundle.1117132/

    (Addressables) Where is the Addressables hosting path coming from?
    https://forum.unity.com/threads/where-is-the-addressables-hosting-path-coming-from.1120006/

    (Unity Cloud Content Delivery) "ucd.exe releases create" outputs "Error! invalid page"
    https://forum.unity.com/threads/ucd-exe-releases-create-outputs-error-invalid-page.1130620/

    (Addressables) "Max Concurrent Web Requests" Setting Best Practices for mobile?!
    https://forum.unity.com/threads/max...ts-setting-best-practices-for-mobile.1133422/

    Localization Addressables AssetGroup questions
    https://forum.unity.com/threads/localization-addressables-assetgroup-questions.1123126/

    (Addressables) How to use different AssetGroup's for Localization StringTables?
    https://forum.unity.com/threads/how...groups-for-localization-stringtables.1140802/

    (Localization) How to shutdown/initialize the Localization system before/after content update?
    https://forum.unity.com/threads/how-to-shutdown-initialize-the-localization-system.1144178/
     
    Last edited: Aug 21, 2022
  2. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    Flagging this thread for the team. I also pinged our QA team about your "Waiting" reports.
     
    Peter77 likes this.
  3. davidla_unity

    davidla_unity

    Unity Technologies

    Joined:
    Nov 17, 2016
    Posts:
    770
    Hey Peter, I just wanted to give you a few little updates on a few of your cases.

    (Case 1341756) Addressables 1.18.9 breaks content update functionality
    This might be fixed in 1.18.11. We had a remote paths regression that slipped into 18.9 that was pretty bad so we fixed it in .11. If that doesn't fix the issue then it's something else and we have the ADDR ticket to look at. It's in our high priority bucket.

    (Case 1343727) Corrupted cached catalog.json causes that no remote catalog can be downloaded anymore
    We have a ticket in our high bucket to look into this next sprint. We have a release coming out next week so it won't be in that one, it'll likely be in the release after that.

    (Case 1341792) AsyncOperationStatus (eg CheckForCatalogUpdates) returns "Succeeded" for failed calls
    In our high priority bucket

    (Case 1343073) Addressables doesn't ignore excluded files/folders (. prefix or ~ suffix)
    Should be resolved in the upcoming release (currently slated as 1.18.12 but that number could change)

    (Case 1344164) Addressables Groups window doesn't support Undo/Redo
    In our high priority bucket to be looked at.

    (Case 1342255) Addressables: Local Hosting "Enable" state resets after AssemblyReload
    Is currently being looked at and could be in the next release. I'd say I'm fairly confident this will be in next weeks release but it's possible it might get delayed.

    (Case 1345708) Addressables Hosting window causes very high CPU usage
    This one should be resolved in 1.18.11+

    It looks like some people are responding to your open questions. I'll see what I can dig up about the max web requests and post it on that thread. I don't know if there's a good set answer I can give but that feature was added because some developers were seeing those errors you mentioned when too many UnityWebRequests were sent at the same time. Since setting that made the errors go away I'm inclined to think that you were running into the same issue. I can't remember if it's platform specific or UnityWebRequest specific but one of those would be the problem.
     
    Peter77 likes this.
  4. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Thank you for the overview and reply in general. I'm looking forward testing the upcoming releases.

    Do you have a 2 or 4 weeks release cycle? I remember you recently changed it.
     
  5. otez

    otez

    Joined:
    Dec 2, 2016
    Posts:
    10
    it's still there in 1.18.11
     
    Peter77 likes this.
  6. unity_shane

    unity_shane

    Unity Technologies

    Joined:
    Jun 3, 2021
    Posts:
    106
    @Peter77 Generally we release every 2 weeks, although on some releases we take extra time.

    @otez The specific case of the bug as reported by Peter77 should be fixed in 1.18.11 (issue tracker here), and we have a few more content update related fixes shipping in 1.18.12. I would say if you're still running into issues on 1.18.12 once it releases it may be worth submitting another ticket with a repro so that we can take a look another look at it. Sorry for the inconvenience and thank you for bringing it to our attention.
     
    Peter77 likes this.
  7. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Can someone please ask the QA to look into the waiting reports (see first post)?
     
    Jonas-Neuston likes this.
  8. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    I'll flag with the QA team, @Peter77
     
    Peter77 likes this.
  9. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Thank you for the help and sorry for being stubborn on the topic, but it progresses very slowly from my point of view. Another two weeks passed by and only one of the important bugs have been looked at.

    If it continues like this, I don't see that we're able to release our game with a robust content download feature.

    This is a very severe issue over here. If you're unable to resolve the critical issues in the next couple of weeks, it will have a significant affect on the success of our to-be-released-game and company.

    We're a very small developer studio. Please be aware that the outcome of your work plays a significant role for such small development studio. In both ways, good and bad.
     
    Last edited: Aug 28, 2021
    Hasxia, cassius, NotaNaN and 5 others like this.
  10. CineTek

    CineTek

    Joined:
    Jul 12, 2013
    Posts:
    98
    My biggest concern right now is that there does not seem to be a "stable" version in existence? We have tried multiple versions over time and are currently stuck with 1.18.11 - we do experience many of the currently open issues here and we are already in "live" production mode with Open Beta starting in October.
    For the time being, we are forced to use Addressables for reducing initial appstore download size only but our game is designed to make heavy use of continuous content-only updates over time. While this functionality is broken in various ways we cannot unlock the full potential here.
    We need solutions
     
    skullthug and phobos2077 like this.
  11. HEROTECH70

    HEROTECH70

    Joined:
    May 24, 2017
    Posts:
    74
    Has anyone managed to update content?

    A simple thing like, Updating catalog and uploading it to our google bucket will not work, the content is never updated and it doesn't show as available in addressables and no errors are reported, it is driving us crazy.

    I have gone through all of your bug reports but haven't found any that looks like the issue I am experiencing
     
  12. otez

    otez

    Joined:
    Dec 2, 2016
    Posts:
    10
    to me, it's working fine. probably you forgot to setup remote load path?
     
  13. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Thank you for the help and sorry for being stubborn on the topic, but it progresses very slowly from my point of view. Another two weeks passed by, that's 4 weeks at this point, and only one of the important bugs have been looked at.

    If it continues like this, I don't see that we're able to release our game with a robust content download feature.

    This is a very severe issue over here. If you're unable to resolve the critical issues in the next couple of weeks, it will have a significant affect on the success of our to-be-released-game and company.

    We're a very small developer studio. Please be aware that the outcome of your work plays a significant role for such small development studio. In both ways, good and bad.
     
    phobos2077 likes this.
  14. phobos2077

    phobos2077

    Joined:
    Feb 10, 2018
    Posts:
    350
    Have you tried 1.19.4? It seems to be more stable than 1.18.13 and supposed to have a lot of bug fixes compared to 1.18.11 that we also were stuck at before. We don't use content update features yet, but have plans for it - so I'm very concerned about issues with it. We'd like to be able to update some content w/o going through the full release cycle at some point in future, so this feature is important. It was one of the main selling points of switching to Addressables in the first place.

    Which issues related to content update are still not fixed?
     
  15. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Yes, but I only looked at one of my reported bugs (link) and since it still reproduces with 1.19.4, it wasn't really worth to spend more time looking into the other issues as well. I went through the changelog and issue tracker to see what has been fixed, but it looks like many of my reported issues are not fixed yet.

    I just went through my initial post and updated the status, I think it's pretty up-to-date now. According to the issue tracker, the following content update related (crititcal) issues are still open:
    1. (Case 1358381) Addressables generates bundles that are not deterministic
    2. (Case 1343727) Corrupted cached catalog.json causes that no remote catalog can be downloaded anymore
    3. (Case 1341792) AsyncOperationStatus (eg CheckForCatalogUpdates) returns "Succeeded" for failed calls
    4. (Case 1355053) Addressables.DownloadDependenciesAsync keeps downloading data when storage device has no sufficient free space
    5. (Case 1346825) Addressables.DownloadDependenciesAsync doesn't detect error if internet drops
    6. (Case 1344710) Addressables method calls never complete on Android if hosting service is unreachable
    7. (Case 1343820) Addressables doesn't detect corrupted local cached files prior loading
    Half of them haven't even looked at by QA yet.
     
    phobos2077 likes this.
  16. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    Lemme try to chase down an update on at least the ones that haven't even got a response yet.
     
    Peter77 and phobos2077 like this.
  17. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    Looks like they have taken a look at these. Which haven't they taken a look at that you're most wanting an update on?
     
    Peter77 likes this.
  18. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Thank you for the reply.

    QA didn't respond to the following reports which are important to me:
    1. (Case 1346825) Addressables.DownloadDependenciesAsync doesn't detect error if internet drops
    2. (Case 1355053) Addressables.DownloadDependenciesAsync keeps downloading data when storage device has no sufficient free space
    3. (Case 1344710) Addressables method calls never complete on Android if hosting service is unreachable (I just saw QA added a note to this issue, that it's blocked by another issue that must be fixed first, in order to reproduce this issue)

    The following report was closed with "By Design". We actually failed a review process from Apple because of what Addressables considers as "works as intended". The problem is that Addressables downloads files from the internet without user consent. To my current understanding, the current implementation in Addressables is not acceptable from a vendor guideline perspective.
    1. (Case 1343820) Addressables doesn't detect corrupted local cached files prior loading
     
    atomicjoe, CineTek and phobos2077 like this.
  19. CineTek

    CineTek

    Joined:
    Jul 12, 2013
    Posts:
    98
    We have updated to this version but need to do more testing - we have not supplied an update yet since ten. Looks like our cache is becoming corrupted for our internal testers and we need to submit to Apple soon so that's why @Peter77 is right and the cache validity/check APIs NEED to be addresses and added before we can publish our game to certain platforms.
     
  20. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    I'll ping the team for an update.
     
    phobos2077 and Peter77 like this.
  21. davidla_unity

    davidla_unity

    Unity Technologies

    Joined:
    Nov 17, 2016
    Posts:
    770
    Hey Peter, so I just looked up those cases you mentioned and in regards to 1344710 there are some notes on our end:

    "Resolution Notes: Need to disable the Windows Defender Firewall to allow connections from Android devices. Also if using 2022.1.0a5+ need to enable HTTP connections by setting PlayerSettings.insecureHttpOption to allowed (Edit > Project Settings > Player > Other Settings > Configuration > Allow downloads over HTTP). This can be verified in older Addressables versions. The new package version (1.19.5) just adds this information to the documentation and an Addressables build warning log."

    which may or may not be useful to you. But, it might be worth checking.

    For both 1346825 and 1344710:
    We have recently added some workarounds that better handle timeouts and error handling for the UnityWebRequests that those APIs use. There's an issue in UWR that doesn't respect the timeouts given if the initial connection was a failure. The underlying issue that I think is causing the majority of these problems is UnityWebRequest. By default the timeout is 0, which UWR interprets as "infinite". On the Content Packing & Loading schema on the groups you can change the Request Timeout under Advanced Options. Double check that that is some number above 0. Truthfully, all we'd be able to do to have these operations timeout is pass in a timeout to the web request.

    For 1355053, what I think we're recommending for now is that you do something like:
    Code (CSharp):
    1. var downloadSize = Addressables.GetDownloadSizeAsync(key);
    2. yield return downloadSize;
    3. if(downloadSize.Result < DriveInfo.AvailableFreeSpace)
    4.     Addressables.DownloadDependenciesAsync(key);
    5. else
    6.    Do something else
    I don't know what the holdup is on the incoming QA side but we could do this on our end before kicking off the download. I'll just make our own ticket manually so we can check into adding that.

    "The following report was closed with "By Design". We actually failed a review process from Apple because of what Addressables considers as "works as intended". The problem is that Addressables downloads files from the internet without user consent. To my current understanding, the current implementation in Addressables is not acceptable from a vendor guideline perspective."
    This is very interesting. So our solution is that when we detect an error when loading a cached file, we delete it from the cache and re-download it. You're saying that this re-download is getting flagged as unacceptable by Apple standards?
     
    Peter77, timbokoppers and phobos2077 like this.
  22. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Hi David,

    thank you for the reply, much appreciated and helpful. I have a few follow up questions. I hope it won't take several weeks to reply, @TreyK-47 can you please ask David to take a look? Thank you.

    I don't know if that's the issue. The problem is not that I can't connect, the problem is that Addressables is stuck if the remote location can't be reached. It does work when the remote location is reachable. However, perhaps it's solved/workaround using the suggested "Request Timeout" too.


    In what Addressables / Unity versions are these fixes available? We're using 2019 LTS.


    That's excellent information. Until just now I assumed the timeout is not limited to "seconds while receiving no data", but time-outs also when a download takes longer than the specified timeout (e.g. slow internet connection), which is the reason why I didn't use a timeout so far.

    Is this true for the catalog check/download as well? Because the tooltip for the "Catalog Download Timeout" does not specify "seconds while receiving no data".

    This doesn't take into account the uncompressed size, does it? The download size reported by GetDownloadSizeAsync and the size that's required on the storage device to store/cache the uncompressed bundles is quite different according to my tests.

    This code also doesn't take into account the "Cache Clear Behaviour" setting. I don't think it's that simple to only check if enough space for GetDownloadSizeAsync is available on the storage device.


    That's correct, the exact wording from Apple why the submission failed was:
    I guess it's like that: If they find the issue during review you fail. If they don't find it, you're lucky.

    Thanks again for the reply.
     
    Last edited: Oct 8, 2021
    KingKRoecks and phobos2077 like this.
  23. KingKRoecks

    KingKRoecks

    Joined:
    Jul 28, 2013
    Posts:
    157
    @Peter77 I just want to thank you.

    I'm basically in the same boat as you with the implementation of Addressables and it's really been burning me out.
    (Did you know if you google "addressables", the first link is the manual from the 0.4 version which has almost NO information on how to use it? The SEO of this package is awful for some reason)

    Your dedication to this topic is amazing and I really appreciate your contributions!
     
    Ultroman, skullthug, NotaNaN and 2 others like this.
  24. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Thank you for the kind words.

    All I'm really aiming for is to release a game with the least amount of technical issues. Unfortunately, it all starts with the engine technology. If the foundation isn't solid, neither is your game. It's not too much to ask for a stable product in my opinion, but it's quite an adventure.
     
    Ultroman, CineTek, NotaNaN and 4 others like this.
  25. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,839
    I shall ping the team!
     
  26. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Unfortunately it's been almost another month without any sign from Unity.

    Our game went in early-access a few days ago and we see many users run into exactly those issues I reported. Can you please ask your team to help me get this problem resolved: https://forum.unity.com/threads/cas...-has-no-free-space-left.1150715/#post-7631194
     
    Last edited: Nov 5, 2021
    IS_Twyker, Ultroman, cassius and 3 others like this.
  27. cassius

    cassius

    Joined:
    Aug 5, 2012
    Posts:
    125
    Thank you for this thread @Peter77 ! Sorry to hear about the problematic early-access release.

    I've bumped into so many problems with Addressables over the last 6-12 months that, at this point, I rely on it only as a way of smoothing out my game startup load time and Localizations (which is another sore topic for me) - that's it.
     
    Ultroman, phobos2077 and NotaNaN like this.
  28. timbokoppers

    timbokoppers

    Joined:
    Nov 14, 2016
    Posts:
    71
    Did you update to the latest 1.19.17 version? If so, does it help with your questions/bugs?
     
  29. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    After about a year, Addressables was still not robust enough for us to provide an in-game data download. Therefore we no longer use Addressables download API's and no longer use Unity Cloud Content Delivery.

    We removed it about 2 months ago and the number of issues tracked in Unity Cloud Diagnostics, which were related to Addressables and corrupt asset bundles, reduced significantly. I mean SIGNIFICANTLY.

    We use Google Play Asset Delivery with
    install-time
    delivery mode instead. It allows to have 1GB+, which is good enough for us.The benefits from using Google PAD for us include:
    1. No longer frustrated players who complain about data download problems. It's handled by Google Play Store instead.
    2. No longer frustrated players who complain about "the game doesn't work", which was all caused by corrupted asset bundles.
    3. The app update runs in the background and by the time the player wants to play our game, chances are, it was updated automatically already. It's handled by Google Play Store instead.
    4. No additional cost for download traffic. Unity Cloud Content Delivery turned out to be quite expensive and Google Play Store doesn't have such extra cost.

    PS: We used Addressables download feature to by-pass the 150MB Play Store limit. But using Google Play Asset Delivery with
    install-time
    delivery mode turned out to be way simpler, more robust and costs no additional money.
     
    Last edited: Jul 5, 2022
  30. better_walk_away

    better_walk_away

    Joined:
    Jul 12, 2016
    Posts:
    291
    Google Play Asset Delivery is for Android only. How do you address iOS?

    Edit: I saw the counterpart for iOS is On-Demand Resources.
     
    Last edited: Jul 27, 2022
  31. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    The AppStore doesn't have an app-size limit like Google have.

    The maximum "APK size" Google allows to upload must not exceed 150MB. If you want to go bigger, you have to use Google Play Asset Delivery for example.

    Our iOS app is a simple "standard unity iOS build using asset-bundles via Addressables" that contains everything. We don't use On-Demand Resources or other things on iOS.
     
    better_walk_away likes this.
  32. vectorized-runner

    vectorized-runner

    Joined:
    Jan 22, 2018
    Posts:
    398
    So awful, I can't imagine the frustration, you're trying to develop a commercial game as a small studio while Unity can't fix their Asset system for years. It's marked as release btw.

    I was also thinking about using it in our commercial game after seeing this thread not anymore. You took the hit for us, thank you for your efforts.
     
    Peter77 likes this.
  33. xucian

    xucian

    Joined:
    Mar 7, 2016
    Posts:
    853
    FF to current year, latest version with unity 2022.1 seems to work acceptably. We have a web/pc/ios/android combo and no major issues happened, but we've just soft-released a couple of weeks ago, and doing command-line addressables builds (which I'm not sure if these count as "Update existing build" or "Create new build"), but I see that untouched assets aren't rebuilt, only the catalog gets updated.
    One useful step might be to manage the Player Version Override in the settings separately. We have a separate project that builds just the addressables and this setting needs to be kept in sync with the main project, to get the proper url at runtime once we release a new version for the game itself
     
  34. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,639
    Are you utilizing the
    Addressables.DownloadDependenciesAsync
    API to download and integrate bundles during runtime for your game, or is the content already shipped with your game?
     
  35. AlkisFortuneFish

    AlkisFortuneFish

    Joined:
    Apr 26, 2013
    Posts:
    982
    Just to add my five cents, although we do not use DownloadDependencesAsync per-se, our mobile game serves the vast majority of our game assets remotely through addressables without particular problems on the runtime side of things. That said, we do have our own fork of addressables with special packing modes etc. as our specific use case results in over 10000 asset bundles.
     
  36. xucian

    xucian

    Joined:
    Mar 7, 2016
    Posts:
    853
    yes, we use DownloadDependenciesAsync where we can, and most importantly on loading scenes, but we don't 'incrementally' update anythting at runtime. I think WebGL is the most pretentious here as it throws an error so we're not calling it in this case, and also there's a problem with clearing the cache on WebGL.
    we do have different environments that you can switch at runtime, which also change the catalog's url, but we force an app restart in those instances
     
  37. jaros_unity

    jaros_unity

    Joined:
    Jun 6, 2023
    Posts:
    3
    Hi, I'm not sure if it helps to write it here... I've implemented iOS ODR based on unity documentation using the collectResources callback to gather the asset bundles files into packs. Then I have custom IInitializableObject for the asset bundles where I set Addressables.ResourceManager.InternalIdTransformFunc to return the address for downloaded ODR files in format res:// + file.name and thats the problem, because internally the addressables system decide that the address contains "://" and then tries to load it by web request instead of loading it locally from the file system.

    The problem is in ResourceManagerConfig.cs file

    Code (CSharp):
    1. public static bool ShouldPathUseWebRequest(string path)
    2.         {
    3.             if (PlatformCanLoadLocallyFromUrlPath() && File.Exists(path))
    4.                 return false;
    5.  
    6.             return path != null && path.Contains("://");
    7.         }
    Would it be possible to fix it in next addressables package update? For now, I had to make a copy of addressables package to a local folder and fix it for myself, but i'm loosing the connection to official package releases...

    Thank You

    Edit: Here is a bug report, please add votes
    https://issuetracker-mig.prd.it.uni...l-path-are-not-loaded-when-using-addressables
     
    Last edited: Nov 2, 2023
    xucian likes this.