gpt4 book ai didi

android - SMS Retriever API 未从 Firebase Phone Auth 调用 SMS_RETRIEVED_ACTION

转载 作者:行者123 更新时间:2023-11-29 02:38:31 25 4
gpt4 key购买 nike

SmsRetriever.SMS_RETRIEVED_ACTION 未被调用。我正在使用 Firebase Phone Auth:

PhoneAuthProvider.getInstance().verifyPhoneNumber(
mPhoneNumber, // Phone number to verify
60, // Timeout duration
TimeUnit.SECONDS, // Unit of timeout
activity, // Activity (for callback binding)
mCallbacks); // OnVerificationStateChangedCallbacks

我正在尝试使用 SMS Retriever API 检索短信

SmsRetrieverClient client = SmsRetriever.getClient(activity);

// Starts SmsRetriever, which waits for ONE matching SMS message until timeout
// (5 minutes). The matching SMS message will be sent via a Broadcast Intent with
// action SmsRetriever#SMS_RETRIEVED_ACTION.

Task<Void> task = client.startSmsRetriever();

task.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {

}
});

task.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {

}
});

我正在注册 BroadcastReceiver onResume 并在暂停时注销它:

public class MySMSBroadcastReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
if (SmsRetriever.SMS_RETRIEVED_ACTION.equals(intent.getAction())) {
Bundle extras = intent.getExtras();
Status status = (Status) extras.get(SmsRetriever.EXTRA_STATUS);

switch(status.getStatusCode()) {
case CommonStatusCodes.SUCCESS:
// Get SMS message contents
String message = (String) extras.get(SmsRetriever.EXTRA_SMS_MESSAGE);

break;
case CommonStatusCodes.TIMEOUT:

break;
}
}
}
}

可以是 Firebase SMS 格式吗?可能与那个不兼容?

提前致谢。

最佳答案

使用下面的依赖并重试

编译 'com.google.android.gms:play-services-auth-api-phone:11.0.4'

关于android - SMS Retriever API 未从 Firebase Phone Auth 调用 SMS_RETRIEVED_ACTION,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45670263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com