On-Demand Resource iOS/Android - AssetBundles


I’m currently working on App Thinning to reduce the overall download file size of the App, so when the user launches the app, it’ll externally download the larger files (that are of AssetBundles) - a rather common system to use for larger mobile Apps.

After digging around, it seems as basic as creating the AssetBundle, and then sticking it on a server somewhere, in which the App can connect, index and download and save locally, right?

I have found that Apple have a ODR built into their App Store - that essentially does just this.

My first question is - what’s the benefits of using App’s ODR, rather than using my own server for download? And where does that leave Android users?

Surely, if you’re targeting multiple platforms, it just makes sense to stick all AssetBundles together on a server (in their corresponding platforms), and use a WWW download to retrieve and save the assets?

Will Apple not like the fact that I’ll be using an external ODR system?!? (Apple can be funny like that).
Thanks :slight_smile:

If you use app’s ODR, aka local storage ODR, then you will have to put ODR files in project streaming assets folder before submitting to app store and that will not reduce size of build. But if you host these files somewhere, then you don’t need to put them in project and that will actually reduce download size of build.
Also hosting ODR files externally will give you advantage of using them on all platforms.