iCloud Entitlement to app? - ios

So, I've registered for Apple's Developer program just yesterday and I've added my details in Xcode.
I'm just playing around with it and following this tutorial as a learning curve if you wish (as I haven't really played much with libraries like CloudKit, Location Manager and so on):
https://thinkster.io/swift-ios-app/#saving-our-data-using-cloudkit-enabling-cloud-kit-in-our-app
If you scroll a bit, you will see that it requires to sign in with your developer's account in order to activate iCloud.
That's cool, but I get 2 errors that I can't figure out how to solve (and where to solve it):
I'm new to this and I tried google-ing it (of course), but I couldn't figure out how to solve it.

Click Capabilities to view app services you can add to your app. From there, turn on the iCloud service:
Read more about this here
Edit: You may need to enable iCloud in Member center too

I solved the issue. I can't really tell how, but I've connected my iPhone to Xcode and clicked on "Fix issues" again it worked this time. Not sure why or how...

Related

IOS 12 Unwanted communication Reporting Extension Working on Phone but not on Messages app

I have been trying to make the new iOS extension Unwanted Communication Reporting work. Currently I couldn't find any good walk-through tutorial or code-sample to make it work. Above that by just firing up a new project with this extension and building it shows me the option of reporting in the Phone App but not on the Messages app, Moreover, the option to enable it only appears in phone app but it says "sms/phone" so I think this should work for both of them.
I know its in beta right now but just want to know if anyone had any luck with it. Also, There is no code to share as its just the boiler plate that comes with the new project.
This might have been a personal issue. I reset the whole phone and now I can see the options to report message. Apple might have fixed it in their latest iOS build or it might have just been my device issue.
Apple's developer site specifies ”SMS and call spam reporting," which is an app extension that you will have the option of turning on or off.
You may enable an Unwanted Communication extension in the Settings app. I am not sure if Apple will utilize this but i know for android - screen turns red when such spam calls come in, also caller id notes that but currently apple seems to have found a middle ground.
The following worked for me, you can try:
Remove command definition for this in Plist file.
Delete the Target in project (you can delete code folder).

MobileGestalt no access to InverseDeviceID

This happens with every app when I try to use OpenGLES on my iPhone7+ with iOS10.3. But it works without any problems on my iPhone7 iOS10.1.
This is the message I get:
libMobileGestalt MobileGestaltSupport.m:153: pid 304 (OpenGLES_Ch4_1) does not have sandbox access for ... and IS NOT appropriately entitled
libMobileGestalt MobileGestalt.c:549: no access to InverseDeviceID
Does anyone have an idea about these messages?
I wonder if it is bugs or something else in iOS10.3? Because when I run the app on iPhone5s iOS10.2, those messages did not shown on the screen. While I upgraded the phone to iOS10.3.1, the massages shown again.
The reason why I ask this question is that some animation effects perform quite stuck on my iPhone7+, but it is completely smooth on iPhone5s. But now it seems it is no relationship between the message above and the stuck, and I have to check my iPhone7+...
I had the same issue. It turns out to be multiple thread accessing the same OpenGLES related resource, EAGLContext to be specific. I guess it is possible that OpenGLES related codes are not thread-safe, and it behaves differently in different OS versions / iPhone 7 / 7+, sometimes it messes up the memory.
After making sure data accesses are synchronised across threads, the problem is gone.
For those of you who are maybe using Ionic and getting this error, please just make sure that in case you've cloned a new fresh copy of the project from your repository that you did both npm install and bower install.
I was missing bower install and this was torturing me for like two days, so hope this helps someone. Sad thing is that I'm by all means not a beginner with Ionic (top #3 answerer on SO) but was still able to miss this fact so I hope that in case someone else runs into this problem it will help you.
Google Map display and functionality works fine with this warning
Check my answer here:
https://stackoverflow.com/a/44970665/3378076
I can see where the setting up of a sandbox account might do the trick, but if the device you are using is also connected to your normal icloud account, you can't create a sandbox with the same AppleID.
You then have to log out of your existing icloud account, and log in with the new icloud (sandbox) useid. Which screws up your existing icloud device settings.
So you are unable to use your Developer ID, only your Sandbox ID.
This worked for me:
Create a new sandbox user in iTunesConnect. YES, you have to create a new iCloud user with a new email.
Log OUT your current iCloud user on your mac AND on the device you are testing on.
Log IN with your new iCloud user on your mac AND on the device you are testing on.
Run your app on your device again. This time it should work.
Hopefully Apple will come around and simplify this issue since this is a real pain in the ...
I had the same issue, and this point me in the right direction:
I've managed to solve the same problem for MKMapView. Apparently, that happens when your app's current permissions state doesn't correspond to entitled (declared in Info.plist) one. That effecively means that you need to call APIs to gather user's permissions explicitly and preemptively. (E.g. LocationManager.requestWhenInUseAuthorization before displaying a map with user location on it)
Source: rdar://problem/11744455
I had same issue. My rendering program was written to support 3 version of openglES(1, 2 and 3). On my case I was accidentally supplying EAGLRenderingAPI.openGLES1 or kEAGLRenderingAPIOpenGLES1 to my renderer class based on openGLES2.
I just had this issue when trying to use in-app-purchases.
Not sure if yours is the same issue, but I realised that you HAVE to create a Sandbox User in iTunes Connect, then log into iCloud on an iOS device with that user to enable the app to work.
I got this console warning message because of issues with multiple Apple Developer accounts. Evidently you cannot have a sandbox account with an existing Apple Developer account. I didn't try to create a sandbox account but it seems to check my default account, which is also an old Apple Developer account that I don't use and hence is no longer entitled. This issue has been reported to Apple many times by other people and I have not yet seen a solution.
My workaround to suppress this warning was to set the OS_ACTIVITY_MODE environment variable to disable in my scheme settings. You can click on the app name and then click Edit Scheme... or from the top menu you can click Product->Scheme->Edit Scheme... :
Then you edit the "Run" settings and add the environment variable OS_ACTIVITY_MODE and set it to disable:
NOTE: Be sure to set this environment variable to enable before you submit your app so that you can see if there are other warnings. There may be other warnings you should fix before you submit your app to the App Store.

How to get crash logs of Testflight external testers on Xcode or iTunes connect?

Is there any ways to know what's wrong with someone's app. It is working on everyone else's device but this person.
The person tried removing the previous version and installing the new one, but it still does not work. I suspect that one of the files that I place in the documents folder might still be there... but the format of this file has changed since...
Apple has a technote about this named Debugging Deployed iOS Apps.
Also, if your tester syncs up their iPhone with a Macintosh or PC, iTunes also helpfully moves logs into predictable places where they can be retrieved from.
I am attempting to solve this logging of execution in TestFlight with the following simple approach...
In in-App Billing you really have to use TestFlight, so the problem is serious.
The "print("text") statements can be replaced in the code to calls to a func printTestFlight(text: String) which writes the strings to a database along with some identifier so you know the user.
This is quite simple and obvious, and to an extent it works.
If there are events which are logged by the os rather than teh user, then this approach misses those, notably the interesting ones around a crash. I'd be happy to hear from anyone who knows how to do thiso

Xcode signing problems with iphone app: is it possible to build and run without signature?

Not the most bright question, but I really need an answer.
I created an iPhone app with a friend. I did the first 100 hours of the development (by myself) and he did the rest (sometimes I'd help him debug in class). He then took it over completely; finished it and uploaded it to the app store (no idea how that process works). Since we don't know git well enough I emailed him the code. A few days ago I asked him the most recent version of the code back, so he mailed it to me in a zip file and now I can't build the app.
What I want to do is build and run the app in the simulator.
Instead I get the following error:
Even the play button doesn't display anything.
My friend also has no idea why this error occurs. My guess is that he barely knew enough to upload everything to the app store. Also I don't have a developer account, because the person who we are building this app for has it. He gave it to my friend, but my friend doesn't want to give it to me. And the person who has the developer account is not responding.
What should I do? I "just" want to build and run it on my macbook (I know, it probably isn't that easy).
What do I need to know?
So my target was the following at first. This was my only option. Clicking at it did not help, it only showed this thing as an option.
Then after the comment of Nitin I poked around for a bit (for the 10000th time). I did this by clicking on the gear icon which has the option "Manage Schemes..."
I don't know what a scheme is and I remembered that I never saw this menu box before. For fun I clicked on "Autocreate Schemes Now". I got this as a result.
My guess is that it was a new target to build at, and indeed it was.
I can now build and run my project without signing.
Thanks for the comment, it led me to the answer while clicking around once again :)

Ad hoc distribution broken in iOS7

I apologize for this not being exactly a programming question
I have a few apps that I'm deploying internally in our org using ad-hoc distribution with Enterprise account. What worked in iOS6 now creates two icons: one a normal app icon and another one is a weird default icon that has the same name as the main app. Clicking on this icon does not do anything. See attached screenshot (it only has the gray icons). I can remove the app through conventional means (long press and then the "X" icon), but I can not remove the gray icons.
Does anybody know what are those, and how do I get rid of them?
I had the same problem. The fastest way to get rid of these ghost or dead icons is to make a backup of your iDevice and then restore it.
I tried every hint i found with google and nothing helped but the restore. So my advice: Don't google anymore, just backup & restore ;-)
yes, we see that too. often but not always. it definitely looks like a bug
as for getting rid: no really good way...
restart the device, rearrange, delete a few times and wait a few days. a combination of that did the trick for a few phones here
no real solution except for apple to fix it :D
I found a reproducible way of causing this problem.
For me, it appears to be linked to the plist used for over the air distribution.
If you generate it through XCode/Archive/Enterprise Distribution, it works normally.
If you subsequently update the ipa, but keep the old plist, you will get this issue if you did one or more of the following:
1) change bundle identifier
2) changed the mobileprovision used to compile
3) changed the app version
Can anyone confirm? Or is this only happening to me?

Resources