-
Notifications
You must be signed in to change notification settings - Fork 439
"found no keychain client entitlements" after upgrade #420
Comments
I experienced this problem today as well after upgrading. I think you can sometimes get around it by setting the 'keychain sharing' in Xcode to 'on' but I feel like you had a postinstall script in place to take care of this keychain sharing issue as of 3.8, so not sure if something has dropped off? And not quite sure if that will solve the issue long term. Funny stuff! |
I am having the same issue. I double checked my xcodeproj file and I have the Keychaing Sharing set to ON
|
I don't think Keychain Sharing is relevant for this error. But not sure what's causing it. In the meanwhile try using a real device to test on. |
It is working in the real device. The main issue is I can't use the emulator anymore so, I cannot generate the screenshots required to submit the app to the AppStore :( |
@Dmac123 you can always take screenshots on your real device (although scaling for things like iPad is a pain)... :( |
That's the big deal Jen. The iPad screenshots... |
I dug a bit on SO: benbahrenburg/Securely#48 I created the entitlements file and I think the error has gone away. Do you want to try that for your app? |
I tried this and it didn't work. To be clear, I created the file <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.keystore.access-keychain-keys</key>
<true/>
<key>com.apple.keystore.device</key>
<true/>
</dict>
</plist> and placed it in |
Did it work with the nativescript 3.0.x CLI? I suspect 3.1.0 broke this. |
I've been using nativescript-plugin-firebase with the NativeScript 3.0 CLI for a long time and it has worked great, without needing Entitlement.plist or anything other than the setup described in the README. This only started happening once I upgraded to 3.1 CLI. |
Yep, thank you for confirming that. 3.1.0 changed a lot of bits regarding entitlements. Will try to investigate tomorrow. |
@EddyVerbruggen : Any updates on this? |
No not yet. Do you have any idea? |
@EddyVerbruggen
@RobertGardner : Using the entitlements file solves it. You might need to use an additional dev plugin https://github.com/Essent/nativescript-custom-entitlements (More details here NativeScript/nativescript-cli#2075) |
Thanks @asaph26, I confirm that it did the trick for now |
Heres what I just tried: I tried adding Entitlements.plist to
That didn't help. I also turned on Keychain Sharing in my xcodeproj file. That also didn't change anything. The errors I'm getting are:
I tried:
Heres my And here it is now, with the firebase plugin working again: Ignore android runtime version, I havent tested with android yet. One last note: maybe the fact that the CLI is launching the app has something to do with it (https://stackoverflow.com/questions/43539616/ios-firebase-error-unable-to-generate-keypair), because its noted in this thread that launching it from xcode works. |
Thanks @davecoffin. It's an issue with {N} CLI 3.1.x that wasn't in 3.0.x. I'll try and find a solution.. |
The entitlements file fixed it for me. Details: Installed the Thanks everyone! Hopefully Eddy can find a solution that doesn't require the plugin and entitlements file, but I'm quite happy to be able to develop against Firebase again! |
Found a bit of WiFi near my tent 🏕 ! Looks like this can easily be fixed by adding the entitlements file @davecoffin suggested to the plugin's Expect a new version today. |
Available in 4.0.4. |
Thanks @EddyVerbruggen you're the best, enjoy camping! |
That version is the firbase sdk version, not the plugin version. Check node_modules/nativescript-plugin-firebase/package.json for the actual plugin version used. |
I'm reverting this in 4.0.5 as it seems to harm folks when trying to deploy to their phones. Instead I've added the workaround to the main readme. Still, testing on a real device remains the best way to test firebase stuff. Unfortunately. |
Hi, I've tried today to update tns at new version [email protected],
|
@gbonline I fixed this by adding an entitlements file to App_Resources/iOS. This will make it work on the emulator, but when you build on a device you need to remove the entitlements file. PITA, but thats the way I have to do it.
|
@davecoffin I had the same issue that you encountered where simulator builds need the entitlements file you mention but then device builds result in entitlement errors unless those entitlements are removed. I have found that when I use the following *.entitlements file, it works for both device and simulator builds:
Note - replace "com.Company.Product" with your bundle identifier. This is the entitlements entry that Xcode puts in when you enable "Keychain Sharing" in the project's capabilities. Additional details can be found in the Apple documentation Keychain Services Programming Guide - Access Groups which state that:
Device builds work without specifying the entitlement because they are always signed and given the above entitlement. Unsigned simulator builds need to be explicitly given this entitlement. |
I'm posting a new bug since this is happening after the "automate keychain sharing" changes earlier this year (#216).
I upgraded to the latest NS (3.1), firebase, firebase-plugin (4.0.3), pod, etc., and now I'm getting the error "found no keychain client entitlements". Everything goes crazy after that.
To see if it had something to do with the latest NS, I cloned your demo app and ran it. It works. Then I ran
tns update
to update to NS 3.1. It still works. So, there must be something strange I've done (that may be unrelated to the upgrade).To check that it's not something weird left-over during the upgrade, I completely deleted my app and re-cloned it. Still get the same error.
Just before this started happening, I opened my platform/ios/XX.xcodeproj file in XCode (latest version, 8.3.3) and played around with it, looking at how to upload it for testing. It's possible I did something there, but since it still happens when I
tns platform clean ios
andtns run ios
it's hard for me to see what it was. I am not yet an Apple Developer (waiting for some info before I join), so maybe I inadvertently changed something, but the simulator runs my app just fine -- until I try to do anything with firebase.I'm not sure where to look or what to try. Completely uninstall and reinstall XCode?
The text was updated successfully, but these errors were encountered: