Google SignIn в моем приложении для Android работает отлично (я могу войти в систему, используя любые учетные записи Google на телефоне), когда я скомпилировал код на своем ежедневном ноутбуке. Но когда я клонировал код на своем другом ноутбуке и скомпилировал его там, он всегда возвращал ошибку Code 10
.
Вот полный e.printStackTrace()
W/System.err: com.google.android.gms.common.api.ApiException: 10:
W/System.err: at com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(Unknown Source:4)
W/System.err: at com.google.android.gms.auth.api.signin.GoogleSignIn.getSignedInAccountFromIntent(Unknown Source:8)
W/System.err: at com.imincode.earthlings.view.ui.Register.onActivityResult(Register.kt:443)
W/System.err: at android.app.Activity.dispatchActivityResult(Activity.java:8110)
W/System.err: at android.app.ActivityThread.deliverResults(ActivityThread.java:4839)
W/System.err: at android.app.ActivityThread.handleSendResult(ActivityThread.java:4887)
W/System.err: at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:51)
W/System.err: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
W/System.err: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2017)
W/System.err: at android.os.Handler.dispatchMessage(Handler.java:107)
W/System.err: at android.os.Looper.loop(Looper.java:214)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7403)
W/System.err: at java.lang.reflect.Method.invoke(Native Method)
W/System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)
В моих учетных данных проекта console.developers.google.com в разделе «Ограничения приложений» я выбрал приложения для Android и трижды подтвердил, что установил правильный SHA-1 signing-certificate fingerprint
как с моего обычного компьютера, так и с другого ноутбука.
Изменить: И я могу подтвердить, что google-services.json
находится в папке app
на обоих машинах.
1 ответ
Решение состоит в том, чтобы добавить ключ SHA к вашему проекту в вашей базе данных, перейдите к:
Обзор проекта -> Щелкните значок настроек -> Настройки проекта -> Общие -> Прокрутите вниз под именем вашего пакета -> Добавьте свой ключ SHA
Новые вопросы
android
Android - это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфоны, планшеты, автомобили, телевизоры, одежда, стекло, IoT). Для тем, связанных с Android, используйте специальные теги Android, такие как android-intent, android-activity, android-адаптер и т. Д. Для вопросов, не связанных с разработкой или программированием, но связанных с платформой Android, используйте эту ссылку: https: // android.stackexchange.com .