Add catalyst support to abtesting#1279
Conversation
|
At the moment, the quickstart is unable to properly use Installations from what appear to be signing & certificate issues, so Installations was removed from the catalyst version of the app. |
|
Will do a SPM only patch release of GDT to unblock this. |
4360416 to
e14dde5
Compare
|
GDT 9.1.1 is now published for SPM. This should fix the CoreTelephony issue @jrcrespoh |
| print("Error fetching token: \(error)") | ||
| } else if let token = token { | ||
| print("Installation auth token: \(token.authToken)") | ||
| #if !targetEnvironment(macCatalyst) |
There was a problem hiding this comment.
Yes, Installations is not installed due to code signing issues faced with catalyst. This is separate from CoreTelephony.
There was a problem hiding this comment.
Error example
2021-09-02 15:47:01.618605-0500 ABTestingExample (catalyst)[30531:354255] 8.6.1 - [Firebase/RemoteConfig][I-RCN000073] Failed to get installations token. Error : Error Domain=com.firebase.installations Code=0 "Underlying error: The operation couldn’t be completed. SecItemAdd (-34018)" UserInfo={NSLocalizedFailureReason=Underlying error: The operation couldn’t be completed. SecItemAdd (-34018), NSUnderlyingError=0x60000138cf00 {Error Domain=com.gul.keychain.ErrorDomain Code=0 "SecItemAdd (-34018)" UserInfo={NSLocalizedFailureReason=SecItemAdd (-34018)}}}.
There was a problem hiding this comment.
Installations SDK uses Keychain to store tokens. On Catalyst we need to configure Keychain sharing to get access to Keychain.
There was a problem hiding this comment.
Probably eventually we should add comments with instructions to help developers to figure it out and remove the conditions.
There was a problem hiding this comment.
See https://github.com/firebase/firebase-ios-sdk/blob/master/scripts/configure_test_keychain.sh and how it gets used in the firebase-ios-sdk
There was a problem hiding this comment.
But I'm confused why we don't have a similar issue for macos testing?
There was a problem hiding this comment.
For macOS, a prompt asks for permission to allow access to Keychain, which then allows for the normal functioning of the application. Mac Catalyst doesn't surface a prompt when using the same entitlements (which don't include Keychain sharing).
There was a problem hiding this comment.
Hmm. Then the code is probably good as it is with docs since the script I pointed at makes sense for testing but not for a quickstart.
|
@jrcrespoh Please rebase or merge to resolve conflicts |
5294f46 to
f14263a
Compare
No description provided.