尝试在同一个Firebase项目上添加另一个应用程序,因为这两个应用程序是相互关联的,现在我们在一个Firebase项目中有两个应用程序,具有不同的包名,但是使用了相同的密钥存储库,因此发布版SHA1和SHA256也是相同的。
在云控制台中启用Android设备验证,因此不再需要CAPTCHA。
将应用程序包名和SHA1添加到凭据中。
启动第二个新添加的应用程序,然后测试一个手机8月。
在Firebase UI中收到一个未知的错误。
日志:
2021-03-23 23:48:12.109 9350-9350/com.new.added.app E/g0: SafetyNet Attestation has advice:
LOCK_BOOTLOADER
2021-03-23 23:48:12.642 9350-10676/com.new.added.app E/FirebaseAuth: [GetAuthDomainTask] Error getting project config. Failed with INVALID_CERT_HASH 400
2021-03-23 23:48:12.745 9350-9350/com.new.added.app E/r0: Failed to get reCAPTCHA token with error [There was an error while trying to get your package certificate hash.]- calling backend without app verification
2021-03-23 23:48:13.179 9350-9453/com.new.added.app E/FirebaseAuth: [SmsRetrieverHelper] SMS verification code request failed: unknown status code: 17093 null
2021-03-23 23:48:13.192 9350-9350/com.new.added.app E/AuthUI: A sign-in error occurred.
com.google.firebase.auth.p: This request is missing a valid app identifier, meaning that neither SafetyNet checks nor reCAPTCHA checks succeeded. Please try again, or check the logcat for more details.
at c.c.a.d.f.h.tk.a(com.google.firebase:firebase-auth@@20.0.3:26)
at c.c.a.d.f.h.yl.a(com.google.firebase:firebase-auth@@20.0.3:1)
at c.c.a.d.f.h.zl.run(com.google.firebase:firebase-auth@@20.0.3:3)
at android.os.Handler.handleCallback(Handler.java:794)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:6651)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:824)
我注意到这种情况发生在选定的设备上,我尝试运行版本apk,它与小米Redmi Note 2 SDK 21 (没有SIM)和Mi 90T Pro SDK 29 (使用SIM)一起工作,但是Redmi 5A (没有SIM)出现了错误。我认为这与SafetyNet
在启用Android Device Verification
API之后的工作方式有关,如果有人能解释的话,这将是非常值得赞赏和帮助的。提亚
更新:
我发现,如果设备bootloader
是unlocked
,即使它没有根,Firebase Auth SafetyNet也不能工作。
参考资料:https://forum.xda-developers.com/t/just-unlocking-the-bootloader-breakes-safety-net-and-make-device-unverified.4146761/ https://xiaomi.eu/community/threads/unlock-bootloader-and-banking-apps.56312/
由于大多数非高级用户可能没有意识到这一点,所以是否有这样的工作?
发布于 2021-03-24 10:41:57
如果您的设备引导程序处于未锁定状态,则需要锁定它。我也面临着类似的问题,在解锁引导加载程序的情况下,我能够登录应用程序,但是每次reCAPTCHA都是可见的,并且项目url会出现在OTP中。
根据firebase,设备将不会通过safetynet检查:
在解锁的情况下,引导加载程序用户将被每次重定向到reCAPTCHA,即使您已经启用了Android设备验证。
有关如何锁定引导程序的更多信息,请检查这。
https://stackoverflow.com/questions/66777407
复制相似问题