iOS In App Purchase : hosted contents size limits? - ios

i need a confirmation about the file size of iOS apps which use the "In App Purchases" model. I gathered some informations after surfing for a pair of hours, even on StackOverflow, but i need to be sure about what i found (i am new at iOS development, please understand).
As for many coders out there, and expecially game developers, i have to take the installation package size into consideration. For my game, i suspect my graphics will require over 40 MB, but i'll try to stay under 50, to allow over-the-air download.
The ideal scenario would be :
-The user tests the game. Since the package is under 50 MB, he/she can download it without Wifi. Download and use of the game would be free (freemium);
-The user likes the game. 3 In-App-Purchase items are available : 2 related to a package which size is below 50 MB, and 1 which size is above (so Wifi only);
-The user can buy from everywhere (OTA) the 2 littler IAP items, and connect the iThing to Wifi and get, for a higher price, the larger one (order is irrelevant).
Long story made short, my questions are :
I'm almost 100% sure about this, but not 100%, so please confirm : can i make Apple host the IAP files, instead than having to setup a different server and uploading the files on it ?
I understand the app package can be 2GB, and that i have to keep it below 50MB to allow over-the-air download. But can i setup at least an IAP downloadable file which is over 50 MB ? (I suppose yes, but please confirm, it's crucial for my design; i didn't find this information at all)
Sorry if these questions sound silly but i'm in the design phase and knowing how much contents i can include in the game is very important for my next steps.
Thank you

The maximum size for in-app purchase content hosted by Apple is the same as the maximum allowed size for apps, which is currently (as of 2015) 4 GB.
My app uses hosted content that's as high as 900 MB, and I haven't had any problems with files that size. Of course, these are over the limit for downloading over cellular, but that's not a concern for my project.
Additionally, from Apple:
Each developer account can create up to 10,000 in-app purchase
products across all the apps in the account.
Reference: https://help.apple.com/itunes-connect/developer/#/devb57be10e7

Related

Fabric data different from iTunes Connect data

Our Daily New User-count from Fabric is consistently bigger than the App Units per day that we get from iTunes Connect.
Fabric defines Daily New Users as
The number of new app installations across all devices seen on a given
day.
And iTunes connect defines App Units as
The number of first-time app downloads made on the App Store using iOS
8 or tvOS 9, or later. App updates, downloads from the same Apple ID
onto other devices, and redownloads to the same device are not
counted. Family Sharing downloads are included for free apps, but not
for paid apps.
What can cause this discrepancy? I can see many reasons for how Fabric could report a lower number (such as users downloading the app but never opening it, or waiting too long to open it), but not the other way around. Our average send-usage-to-developers opt-in rate is 23%, but that does not affect the App Units number if I am not mistaken.
Is your app available on both iPhone and iPad? If so, then the fact that, as you point out, Apple doesn't count downloads from the same Apple ID onto other devices might be causing this discrepancy? You can install iPhone apps on your iPad even if it's not officially supported, so the rule might still be affecting your app. Also, if your app is a paid app, then the Family sharing rules would also affect the numbers. I've actually wondered how iTunes counts new users, so thanks for that info!
I'm not sure why the numbers are consistently bigger for you on Fabric, because for my app they alternate a bit.
I hope you might have got the answer. If not follow the link below http://help.apple.com/itc/appanalytics/#/itc7bea1545f
It seems there are users who don't opt-in app analytics data.
Apple only shows data from users who have agreed to share their
diagnostics and usage information with app developers.

App submission folder/archive size exceeding 200mb for simple game

Im not sure if this is the right stackExchange community to ask this question but I cant find any other more suitable. So if youre willing to help here it is:
Ive created a very simple game, much like the game PianoTiles. My folder size is upwards of 200mb because I included 3 Ad Networks (adMob and mediations), and their SDK's are around 50mb each. More importantly, I DO need to include these SDK's in my first build right?) Will this be the final size of my app after submission? 200mb is too much for a simple game like mine. Should I just use one adNetwork?
This is the right place to ask your question. First, the number that is most important isn't the size of your project's folder, but the the estimated size that iTunes Connect predicts your app will take to install on devices. You discover that by archiving and uploading to iTunes Connect, and then select your app, find the estimated file size by clicking on App Store File Size under Activity -> All Builds -> Select Build -> press App Store File Size.
As to the number of ad networks, that is up to you, but increasing the number will permanently increase your binary size.
See Screenshot:

App Store File Size Warning in iTunes Connect

Version 1.0 of my app has finally been completed. It's a simple application with the ability to view multiple leaflets and links to videos from a charity-based organisation. I've uploaded it to iTunes Connect for the final build, but I'm seeing a "App Store File Size Warning" in iTunes Connect.
The app itself contains 220 images (each has an average size of 500 Kb but some much smaller). The idea of the app is to have the charity's leaflets all accessible within the app in an offline state (hence why they're not downloaded from a server somewhere, etc).
The app itself also contains links to the companies videos. So the videos itself are not in the app, but rather links to the videos are populating the app's UITableViewCells.
Reading many questions about App Store size reduction, I have moved 1200 titles and URLs for the videos to text files rather than storing them in code. I have reduced the sizes of the images (they can't be reduced anymore because they will become low resolution). I'm just not too sure what I can do to get to the required limit? Or, could I still submit as it's only a warning and not an error?
For example, I downloaded a game today that was 190Mb. How does that get around this?
The app supports iOS 7, 8 and 9, so I can't use App Thinning just for that. I see some information on this: Max size of an iOS application but it's not new, etc.
Is it possible for me to bypass the warning in iTunes Connect and submit anyway? (I'll submit after the ITC X mas break).
Any thoughts on this would be really appreciated.
That won't cause any issue. If your app is less than 100 MB the warning won't be there. Apple prefers to keep the IPA size below 100 MB for keeping the app mobile data friendly (To download using mobile data).
There are several ways you can reduce the size:
Use App Thinning
Implement an one time download mechanism in your app, through which download the files on first start (I'm doing such a mechanism in 3 of my app, that needs around 300 MB of resource for proper working)
You can read more techniques in Reducing the size of my App

Installed App Sizes Vs Appstore app sizes

Here is a question that had been bothering me. The other day I checked my wife's phone and pinterest app was eating up 2 GB of space while the actual app in the appstore is 26.8 MB. I know there must be user / log / crash data that is dumped in its apps document directory but that got me thinking how many other apps on her phone had large amount of user data stored compared to what the app size is in appstore.
So here are my questions of how to do all this using objectiveC
Sample Xcode iHasApp display's all the available apps installed on a device. Is there a way I check how much space they are taking in GB/MB etc?
Is there a way I can go query that app build size in appstore and tell the user hey its only X MB in appstore?
I know I can get to all the app installed on a device is there a way I can check when was an app last launched or used by a user?
Can I check how much space photo / video and music is taking up?
What I am trying do in the end is to see if I can make an app that shows user what they got installed on their device and make some informed decisions themselves.
So far all I am able to find is how to check total used and free space on a device and get a list of all apps installed.
Sample Xcode iHasApp display's all the available apps installed on a device. Is there a way I check how much space they are taking in GB/MB etc?
No. The APIs being used by iHasApp can only be used to check whether selected applications are present -- basically, all you get to ask "is ThisApp installed?", and you can build up a partial list of installed applications by running that check for a large number of common applications.
There is no way to get launch or disk usage information for other applications. I'm not sure last launch is even tracked at all by the device.
With this in mind, most of your other questions are irrelevant. It is not possible to do what you're after from an iOS application.

Blackberry app size issue

I am trying to develop a BlackBerry game and I'm facing several problems related to app-size (the game data needed for all levels and all characters has more than 20 MB size on disk)
I understood that the app size can't exceed 5 MB. Does anyone know if this limitation can be somehow avoided?
During my research, I found 2 solutions but I am not sure if these are allowed by RIM:
the game data to be separated by the game /application itself, in small packages under 5 MB. After user downloaded the game and lunched it, at a certain point in the game, packages will be downloaded, one by one, from publisher's server or BlackBerry World (preferable), to device's memory or device's memory card. From here, the app can access the data anytime it's needed. I already tested by uploading resources to the device and it worked fine. I just need to know if this is allowed or not.
release 4 small games with the size under 5 MB each but share the profile, score from one application to another. I tested this method, too. and the result was OK for me.

Resources