Copy link to clipboard
Copied
The new SDK seems to have added an extra 3.5MB on ipa (release) depending on the app.
On the basic app that does nothing it adds 3.5MB, on one of our apps it added 7MB.
Anybody else got a size increase?
Copy link to clipboard
Copied
Hi all,
Good solution is to extract arm64 code from application binary, and than re-sign *.ipa file that contain only 64bit code.
http://dev.mlsdigital.net/posts/how-to-resign-an-ios-app-from-external-developers/
i tested this on ad-hoc ipa, works fine.
Copy link to clipboard
Copied
After hitting this issue today and doing some direct research, it turns out that adding "-swf-version=28" to my Flash Builder 4.7 compiler arguments was causing this ITMS error. Removing this directive allowed my app to upload to TestFlight as before. In my case, I'm using AIR 17 (latest release) overlaid on Flex 4.6 SDK.
Copy link to clipboard
Copied
I have the same problem. Any solution?
Copy link to clipboard
Copied
ITMS have more than 10 000 codes. Show your full description.
Copy link to clipboard
Copied
I get
ERROR ITMS-90122: "Invalid Executable Size. The size of your app's executable file 'Markets.app/Markets' is 86671360 bytes, which exceeds the maximum allowed size of 80 MB."
Copy link to clipboard
Copied
Do you use Embed tag in your AS3 code?
Touch me via Skype therabbitflash will try to solve your issue fast
Copy link to clipboard
Copied
I found best solution i could expect after i had little nice chat with Apple's developer helpdesk.
This is response from Apple developer support specialist:
Thanks for contacting Developer Technical Support. The size limits for binaries are not well documented, so I can understand your confusion. Size limit vary depending on the minimum OS for your app.
Your app has a minOS of 5.1.1, so iTunes Connect is enforcing an older binary limit of 80MB for the entire binary (the total of all slices).
If you had a minOS of iOS 7 or higher, you’d see limits of 60MB per slice. (This is due to changes in the OS to allow for larger individual slices.)
You are correct that the limit is on the __TEXT section.
The most expedient way to resolve this issue is to increase your minimum OS requirements to at least iOS 7. According to the most recently information on our Developer website, 98% of devices are using iOS 7 or 8.
(slice) - code compiled for one of architectures, we have two slices armv7 and arm64
So you need to set MinimumOSVersion in application XML:
<InfoAdditions>
<![CDATA[
<key>UIDeviceFamily</key>
<array>
<string>2</string><!-- iPad -->
</array>
<key>MinimumOSVersion</key>
<string>8.0.0</string>
]]>
</InfoAdditions>
And BOOM - you get 120mb limit!
Copy link to clipboard
Copied
Thanks for reporting back. To be clear on one thing, you would have got the 120 MB limit under iOS 7 too, you didn't have to jump to iOS 8?
Copy link to clipboard
Copied
I tried adding the MinimumOSVersion key to my application XML for a project packaging from Flash Builder 4.7 and it produces an invalid InfoAdditions error. I'm packaging with AIR SDK 20. It looks like the default value put in the info.plist if I don't specify a value in my application XML is 6.0 (determined by unziping the IPA and viewing package contents).
Is there a way to specify this or do I have to use the fixed SDK version? Is my only choice to change the value manually in the published IPA? Will that even work?
Thanks in advance for any help.
Copy link to clipboard
Copied
For anyone else struggling with this I did want to mention that I was able to manually change the MinimumOSVersion from 6.0 to 8.0 in the Info.plist of the packaged application. I couldn't figure out any way to do this within Flash Builder and it does seem tied to the specific AIR SDK that is being used to package the app.
Unfortunately this does only give an 80MB cap for the binary, not 120MB as someone previously posted. It was interesting since Apple's Application Loader didn't give me an error on validation and did complete adding the build to iTunes Connect, but did get an email indicating an Invalid Executable Size and mentioning the 80MB limit.
I do think I've managed to remove the 32-bit portion of the binary though using the "thin" from the command line and changing other required elements in the Info.plist. I can post details here after I'm done testing if anyone is interested.
Copy link to clipboard
Copied
Are there any news?
I have the same problem and I were not able to fix it
*copypaste*
The problem is the 60MB filesizelimit for armv7! (See Screenshot)
There are almost no embedded images or something like that. the application-file is only 0,5MB to big, but I'm sure it will increase soon due to next updates
Are there any possibilities to reduce the application size? Or maybe to change some settings for excluding the armv7 and only build for 64bit?
Our App is online since a couple of years and now we got "too big"? I see no possibility to "reduce" the code.
I build with AIR 22 and compiler options "-optimize=true -strict=true"
Copy link to clipboard
Copied
Hi guys,
I appreciate a solution would be to bump up the min OS version,
unfortunately I'm not in that position and the app size is incredibly high.
Did anyone find a solution to reduce the executable size?
Copy link to clipboard
Copied
What is your binary size
Copy link to clipboard
Copied
77mb, that's way too much.
moreover, if you inspect what's in the first 15 mb of the file you will find mainly garbage.
is anyone having the same issue?
is adobe working on a better version of the compiler?
can anyone shed some light on this problem?
Copy link to clipboard
Copied
I have IPAs over 100 MB without a problem, though much of that is external videos files, which may make a difference.
You could significantly reduce the size of the IPA by having a flat color splash screen, or any other design that gets from PNG compression. A full set of photographs for all the different screen sizes could take 10-20 MB of space.
I don't think that comes out of the app budget though. For that, just use tougher JPEG compression and lower audio data rates. I'm finding that 64 kbps is good enough for hand held game play, no need to use 320 kbps, or even 128 kbps.
BTW, look at publishing settings and check the Generate Size Report box, and do a build. You'll then see in detail what things are taking up the space.
Copy link to clipboard
Copied
thanks for the reply Colin,
anyway I'm talking about the executable binary size, not the full ipa.
We already stripped out ALL the embedded assets and now we're now trying to shrink the size further but we're impeeded by not having access to the compiler.
ideas?
Copy link to clipboard
Copied
How are you building the IPA if you don't have a compiler?
How are you including images in the app? I guess it's not out of the question that external assets in a folder are still counted as part of the executable. If there's a chance of that being the cases, compressing the images would reduce the executable size.
BTW, as a comparison, an AIR app that doesn't yet do anything is under 8 MB.
Copy link to clipboard
Copied
Your info can't help. 77mb is binary file (executable) inside IPA or it's total IPA size? rename ipa to zip and find there file without extension. show it size
Copy link to clipboard
Copied
anton
77mb is the size of the unix executable inside the ipa.
the whole ipa size is >100mb
Copy link to clipboard
Copied
pgatplumbee написал(а):
anton
77mb is the size of the unix executable inside the ipa.
the whole ipa size is >100mb
This is your main problem - you don't know what are you doing. You must EXCLUDE ALL assets (mp3, jpgs,png) from SWF and use File/Loader/URLLoader for loading it for Runtime. Use always external resources:
1) IPA it's ZIP and external resources can be better compressed as ZIP instead of Unix binaries
2) iOS Apps consist from two versions of binaries - 32 and 64 bits. So you app can easy get crazy sizes just because it use x64 and x32 arch. You can't don't use x64 because AppStore reject yours app
3) When you pack resources inside your SWF - this can crash iOS device because any binaries gets bigger after decomposition inside the memory.
There is no any AIR issues. If you use Embed tags - don't use it anymore. Or use if amount of content not bigger that few MBs.
Copy link to clipboard
Copied
thank you anton for publicly highlighting my incompetence!
as I stated few posts ago we already stripped out all the embedded assets (in your words, we use file\url loaders instead).
any other idea?
Copy link to clipboard
Copied
And how in this case you can get 77mb of Unix binaries?
Find me in the skype therabbitflash so I can help you faster
Copy link to clipboard
Copied
add me to the list of lost souls here...
seems like we have three sizes to worry about: ipa size, swf size, and executable size
mine are:
ipa: appx 150mb, swf: 51mb, executable: 22mb -- not using any embed keywords in my code, and this is an AS3 only app
meanwhile the app store says I have 100 mb, and that I've exceeded that amount
has anyone really gotten to the bottom of this?
thanks