EDIT: My answer is provided below
I was developing an educational app which I was targeting specifically for iPad-1 devices, because I think schools can take advantage on these 'old' devices.
However I'm afraid that nowadays it is not possible to upload apps which support iPad-1 (which is stuck with iOS 5.1).
What happens when I try using Xcode 6.4 to submit, is one of the two:
If I include the standard architectures (both 32 and 64 bits), I'm getting an error saying that apps with 64-bits can't set their target to iOS 5.1.
If I remove the 64-bits support, I'm getting an error saying that Apple do not allow apps without 64-bits binary.
I was trying to search the internet but didn't find much info. Any idea please?
EDIT
I was trying to use the standalone app loader but it didn't change anything because the validate is done by the remote server. For the second option above, I was getting this:
ERROR ITMS-90086: "Missing 64-bit support. Beginning on February 1,
2015 new iOS apps submitted to the App Store must include 64-bit
support and be built with the iOS 8 SDK. Beginning June 1, 2015 app
updates will also need to follow the same requirements. To enable
64-bit in your project, we recommend using the default Xcode build
setting of “Standard architectures” to build a single binary with both
32-bit and 64-bit code."
ANSWER
I got an answer at the developer forums of Apple, so copying here:
Although not in the drop-down box of the deployment targets of Xcode, we need to set the deployment target to be 5.1.1 in order to allow installation on iPad-1 devices.
This is because 5.1.1 is compatible with iPad-1, and is capable of reading dual-architecture binaries.
One thing to consider is that it will not be possible to use TestFlight for testing on these devices, because TestFlight is only compatible with iOS 8 and up. But testing can be taken in other means, like direct-install from Xcode.
Related
Where can I find information which actual version of iOS I need for publishing new app to AppStore?
I mean where in apple guide lines, I can see something like this:
"For now when you publishing your app, supporting version of iOS must start from iOS 9" or something like this.
Apple usually posts this on the developer news feed: https://developer.apple.com/news/
Unfortunately it seems that they delete old posts, but you can find the last one from February 2015 over at 9to5mac.com.
“Starting February 1, 2015, new iOS apps uploaded to the App Store
must include 64-bit support and be built with the iOS 8 SDK, included
in Xcode 6 or later. To enable 64-bit in your project, we recommend
using the default Xcode build setting of ‘Standard architectures’ to
build a single binary with both 32-bit and 64-bit code.”
I have looked through several similar questions and am still unable to get it to work. When I archive and upload my app to the app store, I get the error message :
iTunes Store operation failed. Missing 64-bit support. Starting
February 1, 2015, new iOS apps uploaded to the App Store must include
64-bit support and be built with the iOS 8 SDK, included in Xcode 6 or
later. To enable 64-bit in your project, we recommend using the
default Xcode build setting of "Standard architectures" to build a
single binary with both 32-bit and 64-...
As suggested in other questions/answers, I have brought my app up to recommended settings, set Standard Architectures and Valid Architectures to include arm64 (See below)
This did not work, I received the same error message when I tried to upload the app. I don't have any iOS devices connected to my machine while doing this. I also read that some 3rd party libraries may cause this, but I believe the only 3rd party libraries I use are Google Analytics and Google Mobile Ads, both of which I updated recently (I even tried removing Google Analytics but that did not work either). See the linked libraries section:
After doing all of this, I am at a loss as to why the error message still comes up. I also tried deleting the Derived Data. Is there some other setting in one of the classes that could block the app from supporting 64-bit? How do I get this app to support 64-bit?
Questions/answers I tried previously:
iOS app: Missing 64-bit support
iOS: Standard architectures enabled but iTunes not recognising 64 bit support
iOS app submission : missing 64-bit support
Why the Missing 64-bit support happened when upload to the iTunes connect?
To enable 64-bit support:
You need to add "arm64" under "Valid Architectures" and set "Architecture" as "Standard Architecture" as shown in attached screenshot.
Also make sure to turn "Build Active Architectures Only" to NO.
You can manually add 64- bit (arm64) support like this:
I recently uploaded a test version of my app to iTunes Connect and the next day got this email:
We have discovered one or more issues with your recent delivery for
"MyApp". Your delivery was successful, but you may wish to correct the
following issues in your next delivery:
Missing 64-bit support -
Beginning on February 1, 2015 new iOS apps submitted to the App Store
must include 64-bit support and be built with the iOS 8 SDK. Beginning
June 1, 2015 app updates will also need to follow the same
requirements. To enable 64-bit in your project, we recommend using the
default Xcode build setting of “Standard architectures” to build a
single binary with both 32-bit and 64-bit code.
After you’ve corrected the issues, you can use Xcode or Application Loader
to upload a new binary to iTunes Connect.
The last time I did a release I couldn't upload the app until I fixed the 64-bit build so I know that's okay, but I'm still building against the iOS 5 SDK because our app still supports it. If I change to build for the iOS 8 SDK will this stop my app working for older versions of iOS? How can I tell if new functionality will still work on iOS 5?
You should always compile against the latest SDK, which is currently (3/2015) the iOS 8 SDK.
What you want to set is the "Deployment target". The deployment target specifies the lowest iOS version that you app claims to run on. The deployment target corresponds to the __IPHONE_OS_VERSION_MIN_REQUIRED macro, btw.
So, you can compile against the iOS 8 SDK, and at the same time set the deployment target of the project to "5.0" (or "5.1", or whatever). You have to be careful though that you don't use iOS 8 functions when running on an iOS 5 device, because it would crash the app. I use the -respondsToSelector: method often to test for the availability of functions. +lots of looking into the docs. +lots of testing on older devices.
Well when you update to iOS8 SDK, some of the functions will not work like Push Notification and Location Service. So you need to manage that part accordingly.
Xcode 6.1, Phonegap project, Validation passes without any issue, still after submitting for review I get an email stating that my binaries are invalid since they are missing the 64-bit support.
I've configured my build as suggested in :: Why the Missing 64-bit support happened when upload to the iTunes connect?
After submission for review, I get this message in the mail:
Missing 64-bit support - Beginning on February 1, 2015 new iOS apps
submitted to the App Store must include 64-bit support and be built
with the iOS 8 SDK. Beginning June 1, 2015 app updates will also need
to follow the same requirements. To enable 64-bit in your project, we
recommend using the default Xcode build setting of “Standard
architectures” to build a single binary with both 32-bit and 64-bit
code.
I even tried disconnecting the device I had.. but to no avail.
help, please...
I am uploading an app to the App Store. But unfortunately I get the below warning.
As the warning says, your app isn't prepared for 64-bit, and apple announced a month ago that starting in february 2015 all the apps uploaded to the app store must support it. So, it seems that if you're using iOS 8 you got to enable 64-bit support on you app now.
For supporting 64 bit you got to have in your project build settings the following:
Had the same issue. Property Architecture was set to Standard architectures, but it did not help.
What fixed the problem... I set Build Active Architecture Only to No even for Debug.
App was successfully submitted. Also after archiving the app I saw that estimated size was larger then last time (means it worked).
Hope it helped.
After updating Architectures to Standard architectures(armv7,arm64) - $(ARCHS_STANDARD) it may still NOT work if you have used frameworks in your app.
I tried updating frameworks internal(UIKit,UIMapKit, etc) and external (facebook,crashlytics, etc) and worked for me.
Means any framework that is not updated to 64-bit version will force the app to change to 32-bit and hence will not be submitted successfully on the app store.
Hope this helps!!