我已经将SMS Retriever Api及其工作正常集成在具有最新播放服务的设备上(使用播放服务版本16.x.x及以上版本进行检查)
这里的问题是,如果我在Play Services 11.9.xx
的设备上运行它,那么SMS Retriever客户端没有注册也没有错误被抛出它只是跳过而且不起作用!!
但根据docs -
先决条件 - SMS Retriever API仅适用于Play服务版本为10.2及更高版本的Android设备。
所以它应该适用于我的设备,因为播放服务大于10.2 请提出我的错误! 用于注册客户端的代码:
fun setRetrieveSmsTaskListener(context: Context) {
val client = SmsRetriever.getClient(context)
val task = client.startSmsRetriever()
task.addOnSuccessListener {
LogUtils.debugLog(LOG_TAG, "Sms retriever api task Success")
}
task.addOnFailureListener {
LogUtils.debugLog(LOG_TAG, "Failure Sms retriever api task with exception $it")
}
task.addOnCanceledListener {
LogUtils.debugLog(LOG_TAG, "Canceled Sms retriever api task with exception")
}
}
使用的依赖项:
implementation 'com.google.android.gms:play-services-auth:16.0.0'
implementation 'com.google.android.gms:play-services-auth-api-phone:16.0.0'
使用较低版本的播放服务(如下所示),然后重试
实施'com.google.android.gms:play-services-auth-api-phone:11.0.4'
如果您使用的是最新版本的依赖项,请在设备上更新Google Play服务版本。