Can't find iPad Air 2 with iOS 8.1.2 simulator on Xcode

I'm having a problem with Apple's verification process. They rejected my latest version of the app because it had a problem on an iPad Air 2 running iOS 8.1.2:

"We found that your app encountered one or more bugs when reviewing an iPad Air 2 running iOS 8.1.2 on both Wi-Fi and cellular, which is inconsistent with the App Store Review Guidelines." In particular, clicking Renew Subscription does not start the purchase process (in-app), it dismisses the dialog box. "

The problem is I can't find iPad Air 2 devices in my Xcode simulator. Looked for a solution for a long time, but I couldn't find anything. I tried uninstalling Xcode and installing it again. Nothing helped. I am running Xcode 6.1.1 on Mac Book Air with Yosemite. Please help. Thanks Eyal.

+3


source to share


2 answers


Apple is going to test using the latest hardware and software. Their claim that they used an iPad Air 2 supports this. However, if you test it on an iPad Air with the latest software, it should be the same.

The simulator mainly simulates screen resolution and general differences in device types. Like the iPad and iPhone, they have slightly different ways of handling certain types of user interface. The Simulator does not have an iPad Air 2, because in that sense it is exactly the same as the iPad Air 1. So it only has the iPad Air category. The simulator does not simulate differences in processor speed, or even differences between A7 and A8. For the simulator, your code is compiled for the Mac processor.

Also, you cannot test in App Purchase in the simulator on devices only. So it wouldn't help you even if it was there.

If your IAP handling works differently between your testing on a physical iPad Air (1) and testing them on a physical iPad Air 2, chances are your testing will have the same results even if you went out and purchased a new iPad Air 2. So that this is not a solution.

I would try testing your application by compiling it for Release, not Debug. They are different and I have seen that the bugs only appear in the released version. I try to remember to always do this once before submitting the application. To change this, go to the top left corner where is displayed your app name > iOS Device

and right click and click Edit Scheme

.

Edit Scheme



Change your build config from debug to run release. Just remember to return it after this test. Because for most tests, you want to install Debug.

The only thing you need to check is that you are still hitting Sandbox instead of the real Apple IAP server. For me, this temporarily changes the following:

#ifndef NDEBUG
#define kReceiptValidationURL @"https://sandbox.itunes.apple.com/verifyReceipt"
#else
#define kReceiptValidationURL @"https://sandbox.itunes.apple.com/verifyReceipt"
//#define kReceiptValidationURL @"https://buy.itunes.apple.com/verifyReceipt"
#endif

      

Again you DO want you to install it before shipping.

When you test this out, I assume it will behave exactly as the Apple Review team says. He will fire the box like she does for them. And then you can start working on figuring out the reasons.

Also as a side note, I can say that I have the same problem on iOS8.1.x. But my application was approved under 8.0 and IAP worked well then. But now in iOS8.1 IAP doesn't work anymore. Once I find a solution, I'll post it here. Please do the same if you find it. Thank!

+1


source


Go to Xcode option -

1) Windows-> Devices-> a window will open. In the lower left corner of this window, you will get a + (plus) button. Click there and add the simulator Ipad_Air2.



or 2) Xcode -> preference -> download -> download simulators now.

+1


source







All Articles