Xcode Simulator: How do I get the settings "Screen time"? - testing

I try to test in app purchases with sandbox users. Unfortunately I always get the error "Cannot connect to itunes store". All bug fixes I've seen mention you should reset some settings in the "Screen time" section of the settings app. However, I don't have any screen time in the settings app. What am I missing? iOS version is 13.3 of the test device. I've also tried to login to the itunes account with the sandbox user, but this doesn't work of course. So what am I missing?

In app purchase testing on the simulator is impossible. Test only on a device. When you run the app from Xcode, the sandbox user will be used automatically; no need to sign out of your normal user. Even simpler, use TestFlight.

Related

How to remove code signing in Xcode?

I've created an iOS7 project in Xcode 5. It's a very simple app. I zipped it and sent it to another developer. When they open it, they get these messages:
No matching code signing identity found
No code signing identities (i.e.certificate and private key pairs)
matching "iPhone Developer" were found. Xcode can resolve this issue
by downloading a new provisioning profile from the Member Center.
How do they get around this? The app isn't going to be submitted to the app store.
Is this happening because they have not linked Xcode to their online developer account? Isn't an online developer account free?
The other developer can ignore that message if the intention is to run the app on the Simulator. But you must use code signing in order to run an app from Xcode on a device, even for testing purposes, even if the app is never going to be submitted to the App Store. And that costs $99/year. End of story.
You could turn your account into a Company account and put this developer on your company; that way the developer is covered under your $99.
Or, if you just want to send the app to someone for testing and you don't need them to run the app directly from Xcode on a device, you can create an Ad Hoc build targeted to their device.
And of course the developer can look at your code, test on the simulator, and run your previously built Ad Hoc build on the device - but not run from Xcode on the device, i.e. the developer can not build for a device without someone paying that $99/year fee.

ABAddressBookGetAuthorizationStatus in simulator always returns kABAuthorizationStatusAuthorized

I am updating an app for iOS 6 Address Book authorization and have hit a problem in testing. The simulator always returns that authorization is granted. This means I do not see the dialog popup requesting permission and can therefore not test that code path. Ok, use a device instead... The problem there is the OS appears to remember my answer so only asks once. Deleting the app does not help. On reinstalling it has retained the permission setting from before, so again no popup.
Resetting the simulator does not help and if you go into the Privacy settings on the simulator no apps are listed as requesting permission to the Address Book.
The only option I have is use another iOS device that has never had our app installed on for each test. This cannot be how you are supposed to test this. Any ideas anyone?
Thanks
Found it. From the device, Settings->General->Reset->Reset Location & Privacy. So you have to do that for each test

Trouble generating MASReceipt during development

I am working on developing a Mac application that has an in app purchase. I have done this before on iOS, but I cannot get it to work with the Mac app. After doing some research it looks like I will have to get and validate a receipt from the Mac App Store before this will work.
I believe that I have followed the steps to do this correctly,
1.) Build the app in Xcode.
2.) Launch the app through finder
3.) When prompted sign in with a TestUser account created in iTunesConnect
4.) The app closes with the error message
“AppName” is damaged and can’t be opened. Delete “AppName” and download it again from the App Store.
When I open up the bundle though I do not see the _MASReceipt/receipt folder and file - and I am still getting invalid product identifiers from StoreKit.
These steps seems to work for me the last time this happened:
Log out from Mac App Store.
Force quit storeagent and softwareupdated processes.
Try double-clicking the app to start it again.

"The device does not recognize this host message when running app on the device" [duplicate]

I'm trying to profile my application using Instruments on the device itself. Specifically, I'm trying to do time profiling.
Unfortunately, I just can't get it to work. Here's the situation:
1) If I run instruments with the app signed using the developer profile on the simulator, it works.
2) If I run instruments with the app signed using the distribution profile on the simulator, it works.
3) If I run instruments with the app signed using the distribution profile on the device (which is the default case for profiling since the scheme is set to use the release build) then Xcode complains about that there's no valid provisioning profile. That seems reasonable.
4) If I run instruments with the app signed using the developer profile on the device, then Xcode transfers the app, but then states that it's "Finished running" immediately. The app isn't run, and in most cases there's no error message.
Sometimes, just sometimes, there's a message from the Organiser stating that device does not recognise host - E800001C.
5) Running the app directly using the developer profile works fine - I can debug as expected.
Summary - I can't run an app on a device through Instruments using a debug build - it stops before it's had a chance to start. There are no error messages - nothing at all in the debug console.
Help?
Thanks,
Tim
I've solved this. It hadn't occurred to me to check the console inside the organizer. It said:
: entitlement 'keychain-access-groups' has value not permitted by a provisioning profile
After a bit of Googling I discovered that deleting the app from the device would solve my issue. Now I can profile.
So easy when you know how. Hope that helps someone else.
Tim
First of all app can be executed on simulator without signing it. Now apple has provided us the developer profile to test the app on devices.
Distribution profiles are created for submitting the app to the apple store or when application has to be distributed to the employee within the enterprise.
If want to do profiling on device do it with developer one. It should work.

iPad didn't call didRegisterForRemoteNotificationsWithDeviceToken

I'm trying to get device token in iPad for remote push notifications;
registerForRemoteNotificationTypes is called okay, no error, but didRegisterForRemoteNotificationsWithDeviceToken also not been called;
Application is appear in Settings/Notification;
What's I doing wrong?
iPhone is registering successfully.
Thank you
PS: iPad 1, iOs 5.1
In this case, if the code works on iPhone that code should work on iPad as well. Coz the os is same. Anyway if your code is not working on iPad try to remove provisioning profile from the iPad and reinstall the correct one. Sometime the old provisioning profile remains. And don't forget to check the code signing on target as well.
check that you are registering correctly for Push Notifications, including verifying your provisioning profile for "aps-environment" key and the code signing of the .app.
also you can debug Push Notification status messages in the console (you will need to install PersistentConnectionLogging.mobileconfig provisioning profile on your device and reboot it. check out this link under "Observing Push Status Messages").
There is an important thing to know with the provisioning profile. You should ensure to create the certificate first (the one used for the notifications), and then recreate the provisioning profiles, so that they know about the notifications. So you're sure it's not a provisioning profile issue.
Well, problem was solved in production sign and provisioning, but not in development. When I archive application for device and load it through iTunes, push notifications is working. Very strange behaviour.
I know it's a late answer, but it may help others. I had the same issue as the OP. After you click ok on the notification popup, it disappears but none of the method gets called to get the device token. Then I checked the internet connection when testing push notifications and I realized I had no connection. After re-connecting, it began working fine.