Issues with OIDExternalUserAgent when requesting OIDAuthState
I switched to GTMAppAuth from AppAuth iOS as it hasn't been updated for a long time. I am struggling to get the OIDAuthState: Earlier i used to get it as follows:
OIDAuthState.authState(byPresenting: request, presenting: self) { authState, error in if let authState = authState, let accessToken = authState.lastTokenResponse?.accessToken
But now with the GTMAppAuth library it is asking for one more parameter external user agent as follows:
OIDAuthState.authState(byPresenting: request, externalUserAgent: self, callback: { state, error in })
And it is giving me errors with this parameter. I'm not sure why that parameter is in the call as there is no mention of it in the documentation and what to pass in external user agent? Can you please help me with this?
@petea Can you help me with this?
This sounds like an AppAuth rather than a GTMAppAuth issue. If you're not using GTMAppAuth classes you should depend directly on AppAuth rather than getting it transitively via a GTMAppAuth dependency.
If you're building for iOS, the method you mention using previously should be available via the OIDAuthState+iOS category. However, GTMAppAuth depends on AppAuth/Core which is a subset of AppAuth that does not include the OIDAuthState+iOS category. Returning to a direct dependency on AppAuth should solve your problem.