我尝试通过以下步骤禁用我的android应用程序的reCAPTCHA流。
通过启用Android设备验证API来删除reCaptcha你的项目在谷歌云控制台。你可以通过添加Your项目。
之后,您还应该在您的Firebase项目中添加SHA-256密钥项目设置。
现在将没有reCaptchaa来验证您不是a机器人。
,但它没有为我工作,而不是我得到错误,而生成OTP
Exception encountered during crypto setup:
Protocol message contained an invalid tag (zero).
KeysetManager failed to initialize - unable to get Public key
Could not generate an encryption key for reCAPTCHA - cancelling flow
Failed to get reCAPTCHA token with error [An internal error has occurred. [ Failed to generate/retrieve public encryption key for reCAPTCHA flow. ]]- calling backend without app verification
我在用红米note 5 pro测试应用程序时得到这个错误,
而三星A20和一加9显示reCAPTCHA流,但获得OTP作为默认行为。
好的,我找到了这个问题的解决方案,需要遵循几个步骤才能禁用reCAPTCHA流
在Android中,解决方案是在FireBase项目设置下的App Check选项卡下启用同意SafetyNet的条款和条件。
只需点击你想要启用安全网的应用程序,一个新的复选框将出现。同意条款,并保证错误得到修复。
删除firebase中的项目,并使用相同的包名重新创建
使用Firebase对twitter进行身份验证时出现以下错误:
Failed to generate/retrieve public encryption key for Generic IDP flow.
解决方案是在清单中设置以下内容:
android:allowBackup="false"
android:fullBackupContent="false"
显然,这种情况发生/需要,因为卸载应用程序后,如果你允许备份,那么你的公共加密密钥被留在后面,但如果你正在安装一个更改/新版本的应用程序,那么检索到的密钥(从备份)无法解密,但如果你不允许备份并重新安装应用程序,那么密钥被删除,然后重新生成。
将上述更改应用到清单后,我重新安装了应用程序,然后卸载了它(有效地删除了先前备份的密钥),然后重新安装并工作。