我已经在具有最新播放服务的设备上集成了SMS Retriever Api及其工作正常(已通过16.xx及更高版本的播放服务进行了检查)
这里的问题是,如果我在具有 Play Services 11.9.xx
的设备上运行它,则SMS Retriever客户端不会注册,也不会抛出任何错误,它只是跳过而没有不行!
但是根据docs-
先决条件- SMS Retriever API仅在具有Play功能的Android设备上可用 服务版本 10.2 及更高版本。
所以它应该可以在我的设备上使用,因为播放服务大于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'
答案 0 :(得分:1)
使用较低版本的播放服务(如下所示),然后重试
实现'com.google.android.gms:play-services-auth-api-phone:11.0.4'
或者如果您使用最新版本的依赖项,则在设备上更新Google Play服务版本。