2

I want my apps to be available for phones above 4s i-e iPhone 5,6 and iPad. How can i disable app store to make it available for iPhone 4s. It asks me to put iPhone 4s and the app is not made for its screens.

Muhammad Umar
  • 11,391
  • 21
  • 91
  • 193
  • 2
    You need to support all devices capable of running your app. For iOS 9 this is iPhone 4s and above. – Paulw11 Mar 17 '16 at 08:41
  • and what if u don't want it for iphone 4s – Muhammad Umar Mar 17 '16 at 08:44
  • That isn't an option at this point – Paulw11 Mar 17 '16 at 08:45
  • 1
    Yes, you can not disable any device for your binary. Just try to explained in description or notes the reason for not supporting that. If apple reviewer team agrees on that, then they might approve the app. – Sandeep Kumar Mar 17 '16 at 08:48
  • 1
    Another way for your use case can be to allow the app installation, and at launch check the screen size programmatically. You can then redirect the users to a specific screen saying the app is not compatible with this device. – UditS Mar 17 '16 at 08:52
  • Possible duplicate [here](http://stackoverflow.com/questions/10191657/restrict-to-certain-ios-target-devices-for-app-store-submission) – UditS Mar 17 '16 at 08:52
  • You may fix it for iOS version but not for device. As iPhone 4s is also supporting iOS 9.1.2. – Hemang Mar 17 '16 at 09:13
  • 1
    @UditS: That would be guaranteed to give you tons of 1* reviews; if it is a paid app tons of requests for refunds, except that there is no chance this passes the app review. And it is pointless (if you are too lazy to support the smaller screen) since your app must run on an iPad. – gnasher729 Mar 17 '16 at 09:24

2 Answers2

7

You can't explicitly set a list of devices compatible with your app. Some well-knows games explicitly writes the list of compatibles devices right in the beginning of the description text from the App Store.

Example taken from The Room Three app store page :

WARNING: DUE TO HEAVY GRAPHICS REQUIREMENTS, THE ROOM THREE IS NOT COMPATIBLE WITH IPAD 1, IPHONE 4 (& OLDER IPHONES) OR IPOD TOUCH 4TH GEN (& OLDER IPODS)


There is still a way to restrict the app to some devices using some special iOS Keys on the .plist file.

UIDeviceFamily : This key is added automatically by Xcode and represents the hardware on which this app is designed to run : iPhone/iPod touch or iPad. You can set it according to build settings.

UIRequiredDeviceCapabilities : This key is much more useful since it allows you to restrict the app according to the Device capabilities. If you don't mind losing iPhone 5 and 5C users (since their devices are no longer produced) you can set the key arm64 which means that your app is compiled only for the arm64 instruction set, and thus will work only on iPhone 5s and later devices (and this even if your app work fine in armv7).

Michaël Azevedo
  • 3,874
  • 7
  • 31
  • 45
1

Unfortunality, you can't do this. If I were you, i would check screen size in applicationDidFinishLaunching method then if device is iPhone 4s, i would show an AlertView and explain the user. This might be the best way to do this approach.

Michaël Azevedo
  • 3,874
  • 7
  • 31
  • 45
Kemal Can Kaynak
  • 1,638
  • 14
  • 26
  • @trojanfoe ofc the best thing to do is supporting all devices but he do not want to do this. – Kemal Can Kaynak Mar 17 '16 at 09:24
  • If he doesn't want to support the iPhone 4s running iOS 8 or iOS 9, then he has the choice of making an Android app. – gnasher729 Mar 17 '16 at 09:25
  • @KemalCanKaynak This doesn't get the App Store to not make it unavailable for just 4s – Skywalker Mar 17 '16 at 09:26
  • 2
    @KemalCanKaynak Actually you said "Unfortunality, you can do this" and it was MichaëlAzevedo that corrected it for you, so there is no need to be snippy with others about being able to read when you don't appear to be able to write. – trojanfoe Mar 17 '16 at 09:37