I have a app that got to big for the apple file size of 30meg and had to go through this same pain.
the tar module that one of the dev’s made IS what you want to use. it does not compress the files, AND it does not support sub-directories in the TAR. but it will lump all the files together into 1 large tar file for easy downloading.
Yes I had to have our own server in which to host the tar file from for downloading. because even if i used expansion files on Google Play… I couldn’t easily get them to download and uncompress to a Apple IOS app. So going with my own file server was the way to go (Which for us was simple, we already have servers that we host websites on)
Once you do that you have to write all the code to download the tar file, use the LUA file system and TAR module to uncompress and move the files where you want them. AND if you are publishing this to Apple… then you have the problem that all of the files you downloaded are now in the System Documents directory and not the system Resource directory.
Apple will reject your app if you store to much MB in the system Documents directory unless you mark all the extra files as Do Not Backup other wise apple will reject it for violating their iCloud backup rules.
to mark the files use the following API and execute it on EACH file after its been extracted from your TAR file (Make sure you delete your TAR file after its been extracted as well).:
[lua]–iOS/Mac: Added API to control (disable) iCloud backups on per-file basis
value, errorstr = native.setSync(“file4.txt”, { iCloudBackup=false } )[/lua]
value is true on success/false on failure. errorstr will be set with the error string on failure. value, errorstr = native.getSync(“file4.txt”, { key=“iCloudBackup” } ) gets the current extended attribute setting. If an error occurs, errorstr will be set with a string, otherwise it is nil. The default base directory is the Documents directory (because that is the only folder that is backed up by iCloud). Other platforms return nil when these APIs are called. [import]uid: 88147 topic_id: 30618 reply_id: 122685[/import]