Android Google reCaptcha没有';在真实设备上不显示验证码挑战对话框

Android Google reCaptcha没有';在真实设备上不显示验证码挑战对话框,android,recaptcha,safetynet,Android,Recaptcha,Safetynet,我正试图从google开发者网站上实现google reCaptcha。我的代码: private fun onClick() { SafetyNet.getClient(this).verifyWithRecaptcha(CAPTCHA_KEY) .addOnSuccessListener(this) { response -> if (!response.tokenResult.isEmpty()) {

我正试图从google开发者网站上实现google reCaptcha。我的代码:

private fun onClick() {
    SafetyNet.getClient(this).verifyWithRecaptcha(CAPTCHA_KEY)
            .addOnSuccessListener(this) { response ->
                if (!response.tokenResult.isEmpty()) {
                    verify(response.tokenResult)
                }
            }
            .addOnFailureListener(this) { e ->
                if (e is ApiException) {
                    Log.d("asd", "Error message: " + CommonStatusCodes.getStatusCodeString(e.statusCode))
                } else {
                    Log.d("asd", "Unknown type of error: " + e.message)
                }
            }
}
在模拟器上,它的工作很好。当我点击按钮时,reCaptcha会显示带有多个图像的对话框,用户应该在其中选择所有带有汽车、gidrants等的图像

但是,在真正的设备上。在我点击按钮后,我总是收到onSuccess回调,对话框从未显示

也许有人知道我面临的问题是什么?

根据:

如果reCAPTCHA确信这是真实设备上的真实用户,那么它将返回一个令牌,而不会发出任何质询。否则,它将提供视觉/音频挑战,以在返回令牌之前证明用户的人性

“没有挑战”意味着没有挑战。关于你的真实设备,谷歌显然已经对你的人性感到满意,不需要进一步确认


verifyWithRecaptcha()
按设计运行。

非常感谢您的支持help@greeble31你能告诉我reCAPTCHA是如何决定这个设备是真的吗user@AndoMasahashi我只能猜测。你能和我分享你的想法吗thoughts@AndoMasahashi也许谷歌会利用一系列人类智力挑战的结果来建立个人档案,它基于IP地址和假名标识符(cookie或移动广告ID)进行跟踪。如果他们的服务器基于此配置文件认为客户机可能是人类,那么就不需要reCAPTCHA;客户端将直接获得身份验证令牌。