we have a fairly old app that until very recently had iOS 9.3 as minimum deployment target.
After increasing the deployment target to iOS 11, I can no longer open the App on my iPad 2 with iOS 9.3 with an Alert ""App" Is No Lonager Available". (A previous version of the app is installed on my iPad, this old version of the App does now not launch anymore).
And I can not download the App from the AppStore on iOS 9.3 with an alert "Unable to Purchase - "App" is not compatible with this iPad." - this is with an Account with which I had installed the App before.
I thought it was supposed to work the way that, when updating the deployment target, users on older OSs can still use and download the last compatible version of the app?
In the AppStore under "Pricing and Availability" -> "Last-Compatible Version Settings", All Versions are checked (Version 4.41.0 is the first one without iOS9 support).
Is there something we have missed?
I have now found that there is a way for users to still install the App.
When going to App's site in the AppStore and trying to install, you get the aforementioned error
Unable to Purchase - "App" is not compatible with this iPad.
But if you go to the "Purchases" tab in the Store, search for the app and re-download from there, you get another dialog with the option to install the last compatible version - as expected.
I still don't understand why you can not launch the still installed old version of the app anymore, you will have to re-install via your "Purchases" tab.
Related
I recently built an (universal) app for iOS in XCode 11.7 with deployment target set to iOS 10.0 (as per the Build Settings tab in XCode). Then I deployed that app to Testflight and was able to download and use it on a newer iPhone with the latest iOS.
However, when I tried to testflight it on my other iDevice (and old iPad 4th Gen that only runs iOS 10.3), Testflight told me that the app is only compatible with iOS 12.1 or higher. However, I've recently tested another app on Testflight built with (as far as I can tell) the exact same build settings using same MacBook and the same XCode, and that app installed on my iPad via Testflight without problems.
It sounds like the problem in App not compatible on iPhone 4s and 5 in Testflight and related posts, but my settings for "Build Active Architecture Only" are already set to "No" for Release.
I've already checked the Apple Compatiblity Matrix https://developer.apple.com/library/archive/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html but I am not using any special features.
There are only few things left I can think of
I implicitly (and without meaning to) use some feature of the newer iPhones that are not included in iOS 12.1 or below
I checked in the appstore that the app contains "medical information" (it's just anatomy drawings for students), so maybe this triggered an implicit requirement of Apple Health Kit (which does not run on iPad 4t Gen). This seems unlikely, however, as I only stated this in the App Store listing, not in XCode.
Somewhere in the settings, there is still one remaining switch left to "only support iOS 12.1 or higher" and I just have not found it, If so, please point out where that might be
The app that successfully installed on Testflight is an update for an older app that was published in late 2019, so maybe Apple forces new Apps to require iOS 12.1 or higher (since all apps have to be built against SDK 12.1 now) regardless of built settings, but updates for already existing apps are still allowed to run on lower iOS versions. Is this the case?
Or am I missing something entirely different?
I created an application for Apple watch Model MJ3T2B/A using health kit. It is with watch OS version 2.0. I used Xcode version 7.3.1 to create the app and installed it in my iPhone using diawi. I am not able to run it directly since it said deployment version of watch app is 2.2 and the one i am using is 2.0.
When i enable Show App in Apple Watch it is automatically getting disabled after some time in iPhone(iOS 9.3.2) watch application. Do i need to use different xcode version to create my app? I am not getting any OS updates also in my iPhone app. It says watch OS 2.0 and software is upto date.
I got what was the issue. It is the deployment target which keeps me from installing the watch app. I changed the deployment target to 2.0 in Project->Build settings and now i am able to install the application
For me it helped to check "Window" > "Devices and Simulators". For the iPhone to which the relevant Apple Watch is paired, the name of the Apple Watch was shown as <null>. After unpairing the iPhone (right click > "Unpair Device") and pairing it again, the issues was gone.
Afterwards I was able to select the WatchKit App in the Schemes list and select the entry for "My iPhone + My Apple Watch" in the Device list and Run/Debug the app.
It has also sadly shown that the issue re-appears multiple times during the day and I have to repeat these steps.
I had to add ClockKit.framework as an Optional library under the watch app Extension "Link Binary With Library" Build Phases because I was using the WatchOS 5.0 function called CLKFullColorImageProvider which was causing the app to crash. But, before I did this, I set the deployment target to match that of the Watch OS (4.3 in my case) so the app would run from XCode and dump out the error. So, it seems that changing the deployment target is a good way to get the app to install in order to debug other problems.
I found this answer here: https://forums.developer.apple.com/thread/108598
I had a similar issue where the Apple Watch app would fail to install my Development Apple Watch App. I was able to finally get it installed by increasing the Bundle Number the iOS App and the WatchKit App.
I will soon be uploading a new app to the App store. I have a question concerning the build version of the app. Does Apple still allow us to upload an app that has been build for iOS 7, since I know Apple is kind of forceful about staying up-to-date. I can't find anything about it while googling.
Thanks
The deployment target is the lowest iOS version your app is supporting and Apple doesn't limit that (AFAIK). So if you want to (and are able to), you can still submit an app that runs on iOS 5, for example (iOS 5.1.1 is the newest iOS version for first-generation iPads).
Apple does specify the lowest acceptable Base SDK (the libraries you're linking against) when submitting, though (they change this every few months/years and announce this to developers via e-mail). If you're using the latest non-beta Xcode, you're always fine. Submissions from Xcode beta version are never accepted.
I released an update of my app 2 weeks ago on itunes. User is seeing the new app description and screenshots in the app store but downloads previous version and giving UPDATE option rather than OPEN option on itunes page.When I click on UPDATE button then again app downloads updated version.This happens only for iPhone devices with iOS 6 installed in it.For device with iOS 7, app works fine with updated version installed from itunes.
Any one know why this happens?
similar question-IOS - Old version of app being installed from the app store
If the update is targeting 7.0 and you haven't updated the rights & pricing section of the app to disable download of old versions of an app from iCloud I believe that this behavior has been known to happen.
I recently submitted a new version of my app to the app store, and increased the Deployment Target to 3.2, to make the app no longer able to install on iOS 3.1.3 which is not compatible with it. However, when the app went live on the store, it still is listed as "Compatible with iOS 3.1.3 or later." How can I increase the minimum iOS version for the App Store, so that users with older iOS versions won't be able to install the app?
Make sure to empty the "build" folder inside of your project folder and test the app either on the device or in the simulator once before resubmitting it for review.