I got my app rejected because it crashed on iPad.
And to be honest it should crash, because it doesn’t have sim card which my app uses (for sending messages). I have made devices: iphone, and deployment target iphone in my build. Yet for some reason guys at apple still tried to run it on iPad. How could I make my app only for iPhone? There is no reason to catch exceptions and try to run it on iPad or iPod touch, as most of the app functionality containts sendings sms..
What should I do ? And how to make sure that app gets only on iPhone, not on iPad or iPod touch
I got my app rejected because it crashed on iPad. And to be honest
Share
I think one option is to provide
UIRequiredDeviceCapabilitiesflag in application info.plist.You can give
Telephonyorsms, so it should filter out devices without sim card.From iphone app programming guide.
It should be better if you read App Releted Resources section in the above pdf (page 93).
From the above document,
It says, iOS checks for required device capabilities before launching. So I think you don’t have any problem. Regarding simulator, I am not sure whether above applies to them, since we can even simulate incoming calls in simulator (with you know simulator doesn’t have sim card). So I am not sure how much simulator helps you in this case.
One more thing, Apple will only reject the app if it crashes when run on non-sim devices. Apple always approve an app that gracefully check whether device capabilities present before using it. You can check whether the device can send sms, before using sms feature..
If it can’t sent sms, show an alert box indicating the same. Just 2 lines of codes, but less head ache and tension..