This is my first time putting an app on the itunes app store. I've tested on a device and created the binary, but when I use Application Loader to upload the binary I see the binary is lighted-out and un-clickable. Also, when I bring up the binary .app file in Xcode it has a big circle with a slash through it. What does this mean, and how do I fix it?
Thanks a bunch!
The crossed out icon means "this file cannot be executed". This is normal, since the app and your Mac have different architectures.
Related
i am using Unity 5.3.1f1 and make game for iOS, after my game is done i build it to XCode. The binary archived from XCode, and generate ~65MB IPA file. Terrifically, after i upload that IPA file to the app store, it becomes larger ~150MB.
I have read this thread:
http://answers.unity3d.com/questions/1149641/very-large-ios-build-size-unity-5.html. But in those case, their IPA file itself is large, and i already disable bitcode
Do you guys have any suggestion?
By assuming you're ok with ~65MB file, i can say there is nothing you can do about it. App store shows install size of your game which is a lot larger than size of compressed IPA file.
For instance, while my game's IPA file size is ~95MB its size on app store appears as ~300MB. In case it helps, please see my earlier question.
I have a simple iOS App with 4 Viewcontrollers and few ressources. The Resources include a video (30mb) and images (10mb). I was expecting an app size of max. 50MB but when I archive it goes up to 107MB.
I have read that when I use Swift libraries or pods Xcode includes Swift core into my app. My question is now what should I do? 107MB is unacceptable. Even 50MB is really big but I was fine with. Is there a way to reduce the size and keep the Swift pods included? At this stage I can't even upload it.
UPDATE
Thanks to #GoRoS I have inspected and found out that libswiftCore.dylib 43MB & libswiftFoundation.dylib 5MB are the files that really increase the size. Still its strange. I have the Swift libraries at two different locations in my IPA.
IPA
iphoneos (contains Swift libs)
payload
Frameworks (contains obj-c libs and Swift)
SaifDeen, I would recommend to inspect your IPA file by yourself and you will discover why your app is that big ;)
For that just remember that an IPA is a simple ZIP file:
unzip -lv /path/to/your/app.ipa
Check this reference
Update:
Disabling bitcode will decrease your IPA size. However, as far as I know, even though you have bitcode enabled once your app is in the store Apple makes some optimizations to the app before the user downloads it. The result of that should be a smaller file size.
I was having a similar issue with my app and the only way that I was able to see the final size of the app is not when archiving, is once the app is on Apple servers. The best way to test this is archiving and upload it to iTunes Connect and then installing it with TestFlight.
In my case, at first was around 90 MB and then when installing with TestFlight was only 39 MB.
Hope this helps
bitcode and swift libraries DID NOT have anything to do with my issue.... i basically simply clicked and dragged a folder into my xcode project, which automatically added everything in that folder as 'targets'.
However, these files did not come up when searching through my target dependencies within xcode.... but they DID INDEED show up when unzipping the .ipa as #GoRoS had suggested previously in this thread.
This was a dumb mistake that i probably should have caught sooner.... but that also means someone else will make the same mistake too : )
screen shots...
i clicked and dragged this folder (ios_alpha) from finder into xcode...
and then everything inside that folder was set as a target membership like this....
hope this helps someone!
glhf!
I have made an unsigned .IPA app using xcode 6 and swift language.
I have compressed the .app file and change its extention to .ipa.
When I want to install this .ipa file on my jailbreaked iPhone, this error is appeard:
"the app 'youtapp.ipa' could not be added to your iTunes library because it is not a valid app".
Would you please let me know what the problem is.
In my case I was using the "Save for Ad Hoc Deployment" option from Organizer to create an ipa file. It appears however that this is broken in XCode 6. Your answer from Jan 1 got me thinking so I did a little digging.
I renamed the exported ipa file to .zip and opened her up. XCode is now putting the .app file inside a folder named "Applications". So I went ahead and renamed this folder to "Payload", zipped it back up, and renamed the zip back to .ipa. Sure enough when I dragged this new ipa file to iTunes it works fine and can be installed on my phone.
Seems to me a bug in XCode, I think I should report it to Apple.
I had this exact same problem using Xcode 6.3 when building my iOS app. It seems that the packager does not complain when the following setting is enabled even though the target is an iOS device:
Application requires iPhone environment:NO
You need to set the this to YES and it will name the folder correctly to Payload.
I had a similar issue while trying to create an .ipa for adHoc distribution for one of the Old project (built a year ago by ex-developer). After a lot of research in google and following this link - here. By replacing the .plist file with the existing working projects (obviously - the relevant icons/bundle display name/identifier) and renaming with the current .plist name. It worked for me.
I literally spent about 3-4 hours to fix this issue. Hope it helps some one.
environment was native - iOS app.
My problem was that I forgot to put the .app file in the Payload folder. After putting the .app file in to the Payload Folder, I zip the folder and change its extension to .ipa.
It works correctly.
Im getting this awful and weird error when having selected an ad hoc distribution certificiate in Xcode in the Distribute for Ad Hoc section. Anyone know how to fix this error? :-)
Thanks!
I just fixed the same error in my project. I'll explain the fix, and I'd love to know if it helps.
I had just added the YAJL library to my iOS project. The problem was that I had followed the Mac OS X instructions, rather than the iOS. The Mac OS X instructions include the creation of a Copy Files Build Phase, that copies the YAJL.framework/ folder to the .app bundle.
This is a huge mistake.
Now, what does a framework folder look like inside? It looks like this:
See those symbolic links? (The files with the curvy arrows) They are the culprits. Delete all of those out of the .app folder, and I was able to save the .ipa file with no trouble at all. Actually, you don't need the .framework/ folder in the app bundle at all. That should be compiled into the binary.
So, check your .app file. Are there any weird folders that don't need to be there? Are there any symbolic links hanging around?
I had the same issue, but in the Mac world. It turns out that removing the symbolic links is only tricking the archive tool, and it doesn't really produce a valid result. This error usually happens if one of your embedded frameworks has a bad Info.plist file.
But yes, in an iOS app you can't have embedded frameworks so you should be linking against a static library.
I have trouble uploading my application to app store. When I try to archive my project for validation i get an error:
warning: iPhone/iPod Touch: BMELogo.png: icon dimensions (0 x 0) don't
meet the size requirements. The icon file must be 57x57 pixels, in
.png format (-19014) Unable to validate your application. - (null)
I have checked and re-checked my icon for both size and type. My icon is 57x57 and a PNG.
Do any of you know what to do?
in advance thanks :)
This is a weird error, but it could be similar to what happens when apps on the phone don't match what you see in the simulator. Here's a few things to try:
As Damo mentioned, this is most likely a capitalization issue. Make sure that the filename as specified in the plist matches the case of what's on disk. Devices (and the app store) are case-sensitive, but your Mac is not. If it works in the simulator but not on device, you probably have a capitalization problem.
You might need to Clean (from the Build menu) the project and rebuild. Sometimes XCode just gets confused, especially if you've been moving or renaming images. Quitting & restarting XCode might help, too.
Nuke the site from orbit -- manually delete all of the project's output files. Sometimes XCode keeps old versions of image files around packaged somewhere hidden that cleaning doesn't get rid of.
Start over from scratch. Choose a different name, one where you're sure there's no legacy object file lingering about.
Also, you might want to make sure that you are using the latest version of the Application Loader, you can download the latest by logging into iTunes Connect and clicking on Manage Your Applications, the download is at the bottom of the page.
After you download the installer, close down Xcode, then run the Application Loader installer, then relaunch Xcode, load your project, do a clean on the project, and then archive and try the validation.
I had this error too. You need to reinstall Application Loader which you can get from here https://itunesconnect.apple.com/apploader/ApplicationLoader_2.5.1.dmg