在 react-native 应用程序上,我们正在尝试实现社交登录。对于 IOS,它工作正常,但对于谷歌或 Facebook 登录后的 android,我遇到以下错误并且应用程序崩溃。请让我知道我在做什么错误。
[Tue Jun 01 2021 16:18:11.689] LOG cognito parsingCallbackUrl {"url": null}
[Tue Jun 01 2021 16:18:11.690] LOG parsingCallbackUrl {"url": null}
[Tue Jun 01 2021 16:18:13.581] LOG URLS https://myappf2077acb-f2077acb-dev.auth.ap-southeast-1.amazoncognito.com/oauth2/authorize?redirect_uri=myapp%3A%2F%2F&response_type=code&client_id=7kpeug5cf2tdb7ri3n1tceubrb&identity_provider=Google&scope=phone%20email%20openid%20profile%20aws.cognito.signin.user.admin&state=eXavpAJAD7x8RhGY5HQQGuHV1BMjOrfS&code_challenge=9jig9ys6LEqbuWlcHKbFoaGvnBISoFqYHN7VICSwwPo&code_challenge_method=S256 Redirect myapp://
[Tue Jun 01 2021 16:18:14.793] LOG cognito parsingCallbackUrl {"url": "myapp://?code=210db3a4-1e90-4a64-b16d-1bb4c45d2760&state=eXavpAJAD7x8RhGY5HQQGuHV1BMjOrfS"}
[Tue Jun 01 2021 16:18:14.794] LOG parsingCallbackUrl {"url": "myapp://?code=210db3a4-1e90-4a64-b16d-1bb4c45d2760&state=eXavpAJAD7x8RhGY5HQQGuHV1BMjOrfS"}
[Tue Jun 01 2021 16:18:14.797] LOG cognito codeFlow {}
[Tue Jun 01 2021 16:18:14.803] LOG codeFlow {}
[Tue Jun 01 2021 16:18:15.320] ERROR [ERROR] 18:14.429 OAuth - Error handling auth response. [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.407] LOG cognito signIn_failure [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.408] LOG signIn_failure [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.441] LOG cognito cognitoHostedUI_failure [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.442] LOG Sign in failed [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.443] LOG cognito customState_failure [TypeError: Network request failed]
[Tue Jun 01 2021 16:18:15.445] LOG customState_failure [TypeError: Network request failed]
PFB 我的配置细节
const awsmobile = {
aws_project_region: 'XXXXXXXX',
aws_cognito_identity_pool_id:
'XXXXXXXX',
aws_cognito_region: 'XXXXXXXX',
aws_user_pools_id: 'XXXXXXXX',
aws_user_pools_web_client_id: 'XXXXXXXX',
oauth: {
domain: 'XXXXXXXX-southeast-1.amazoncognito.com',
scope: [
'phone',
'email',
'openid',
'profile',
'aws.cognito.signin.user.admin',
],
redirectSignIn: 'myapp://',
redirectSignOut: 'myapp://',
responseType: 'code',
},
federationTarget: 'COGNITO_USER_POOLS',
};
export default awsmobile;
答案 0 :(得分:1)
将以下几行添加到 android/app/build.gradle 后问题得到解决
'''
compile "com.squareup.okhttp3:okhttp:4.2.1"
compile "com.squareup.okhttp3:logging-interceptor:4.2.1"
compile "com.squareup.okhttp3:okhttp-urlconnection:4.2.1"
'''
答案 1 :(得分:0)
您是否在 Android 上启用了深层链接? https://reactnative.dev/docs/linking
<activity
android:name=".MainActivity"
android:launchMode="singleTask">