How do I configure my app for iPhone only - ios

I have built an app that I would like to put in the app store. The app is intended to run only on iPhone, not on iPad or iPod touch. However, I have heard about other iPhone only apps being rejected by Apple because they don't run correctly on iPad. I have searched the internet for a solution to this, and found that if you set UIRequiredDeviceCapabilities to include telephony, the app is not available on iPad. However, I would like to find a more legitimate way of telling Apple that my app is iPhone only. I am using react native with expo. Any help would be much appreciated.

Related

iOS app compatibility issue with iphone and ipad in Publishing

I developed an app that only runs on iPhone (iPad compatibility not required yet by me). After I publish it to the app store, the apple rejects the app as they test it on iPad and as I mention that it is only iPhone app, therefore, it looks ugly on iPad.
How could I submit it to app store by force apply the setting that it is an iPhone app only, not iPad?
This creates really much issue as I worked a lot and seeing this rejection made my heartbreak.
Apple have stated in their app-store guide lines that iPhone apps should run on iPad. Unless there is some really special need otherwise, which you must be able reason with them.
Check here: https://developer.apple.com/app-store/review/guidelines/
In addition to that it is really easy to make iPhone application compatible in most of the cases, just try and run it once on iPad device( or simulator), and you might find the crash and be able to fix that easy.

How to see iphone app how it works without having iphone?

I want to make an app in android like one of iphone app. I mean android version for an iphone app. So i need to see this iphone app working on iphone. I have this iphone app codes but it has provision profile problem. There is no free provision creation right? i just need to see how it is work in similator. But i cant see. I dont have iphone to download this app. can i use iphone similator to download iphone app from store to see how it works? How to know how it works?
Taking your question one by one:
There is no free provision creation right?
Lucky for you there is, Check it here.
I just need to see how it is work in simulator. But I cant see.
Select a Simulator before running application:
If there is problem with that, manage the scheme.
I don't have iphone to download this app. Can I use iphone simulator to download iphone app from store to see how it works?
No, you cant download an app from app-store to simulator.

Not able to make app iphone only [duplicate]

I'm shipping two binaries; one for iPhone/iTouch and the other for iPad. It's the same application.
Will Apple ensure that the user will never receive an iPhone version of the app on the iPad? If YES, then I don't have anything to worry about, but if not then I do have a problem.
The reason I ask is the iPhone application will simply not work correctly on the iPad because the server knows it's an iPad and will deliver the iPad HD content to it and the iPhone cannot handle that. I would rather not hack my application to send the server a fake device type if running the iPhone app on the iPad in order to receive the correct resources.
Suggestions?
I've been looking for this for a while because I couldn't prevent the iPhone app to load on the iPad. Searched a bit to understand why this was happening, followed #hotpaw2 instructions and found this on the official apple store rules:
UPDATE:
2.4.1 To ensure people get the most out of your app, iPhone apps should run on iPad whenever possible. We encourage you to consider
building universal apps so customers can use them on all of their
devices. Learn more about Universal apps.
https://developer.apple.com/app-store/review/guidelines/
The SDK and/or App store rules prohibit you from preventing an iPhone app from running on an iPad in 1X or 2X zoom mode, unless there are other requirements listed in the app plist. Apple's app review is known to test iPhone-only app submissions (unless there are other requirements) on an iPad, and reject the app if it doesn't run properly.
Other requirements (as listed under UIRequiredDeviceCapabilities in the app's plist) might include your app requiring telephone capabilities (or healthkit, etc.), which might help you temporarily, but still won't prevent the app from running on some hypothetical future iPad product that includes telephony capabilities (and/or healthkit, etc.).
Actually you can.
Add telephony to UIRequiredDeviceCapabilities in your plist file.
But i really not recommend it and maybe you could get rejected because of gratuitously using this property.
I think you should handle that there are iPad versions and iPhone versions on iPads, use the second one as an iPhone.
Also don't forget that retina iPads will use upscaled applications at retina resolution while none retina ones use the standard resolution. And this behavior can tweaked using jailbreak tweaks like RetinaPad and FullForce.
In the plist settings, add Application requires iPhone environment and set the boolean to YES

How can I publish an iOS app on the App Store, but disallow iPad compatibility?

I have an app that i specified target devices as iPhone, not iPad, not Universal.
Something strange happened when i look at the app information, on compatibility section, on App Store: it is said that the app is Compatible with iPhone, iPad and iPod touch.
How can I remove the compatibility with iPad?
Any iPhone app can be run on an iPad in an emulation mode. There is no (official) way to prevent this.
To test that your settings are correct, go to the App Store and search for your app with "iPad apps" set. If it doesn't show up, you're good to go.
You can still download this app on iTunes, or set the App Store to search iPad and iPhone and install it on an iPad, but it runs as an iPhone app on the iPad.
That very unusual. There could be a lot things that could be causing this. You might want to check the provisioning file to see if there's anything a miss there. Also, check the certificate for the app as Well. It might be an idea to created a new certificate for the app. Other than that I don't know what else you could do.

Will iPhone app run on iPhone not paired to an Apple Watch

I'm new to iOS development and I'm playing with Swift in Xcode working on a number of experimental projects.
In one of these I've designed an app for the Apple Watch (using the InterfaceController.swift in Watch App Extension) and in the same Xcode project I've also deigned a corresponding app for the iPhone (in the usual Main.storyboard, ViewController.swift, etc). When I run these apps using the iPhone 6s + Apple Watch - 38mm simulator, both apps run on each device as they should.
Now, if I connect my iPhone 6s and try to run the app, I get a message stating: "Could not launch 'App Name' on iPhone 6s. No paired Apple Watch."
I don't actually own an Apple Watch, so the error is understandable. But this got me to thinking and I now have the following questions:
If I go through the process to submit this to Apple, will the iPhone app work for people as a standalone iPhone app if they have no Apple Watch? Or, are the apps in this project (both the iPhone and Apple Watch apps) only going to work for people who have an iPhone paired with an Apple Watch?
If I want this iPhone app to be available to people with only iPhones, do I need to do anything special? For example,do I need to create a new Xcode project and effectively copy across the iPhone app from this project, or is there another approach I should adopt?
What else do I need to be aware of? For example, do I need to rename the iPhone app to something different to make it available only to iPhone users? Is there anything else I should be aware of?
Regarding running the app on your iPhone, as Paulw mentioned in the comments, just change the execution target to the iPhone app. See screenshot:
Answering your other questions:
The watch extension is an extension inside your iPhone app. iOS Apps with a watch extension work on all iPhones, even if they are not paired with an Apple Watch.
Yes it will be available.
You don't need to worry about anything else. The iPhone app will work on all iPhones. The watch app will show up on only those iPhones that are paired with an Apple Watch.

Resources