0

我正在使用 Google Retriver API 进行自动短信验证,现在一切正常。我正在从广播接收器类接收短信。这是我的短信。。

<#> Waahan: 你的验证码是:1453 jtN03jdhD6p

我只想从消息中提取 otp ..

SMSBroadcastReceiver.java

public class SMSBroadcastReceiver 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:
                    String message = (String) extras.get(SmsRetriever.EXTRA_SMS_MESSAGE);

                    break;

                case CommonStatusCodes.TIMEOUT:

                    break;
            }
        }
    }
}

我已经搜索过了,但每个人都在使用电话..我正在使用检索 API..提前谢谢..

4

1 回答 1

1
 case CommonStatusCodes.SUCCESS:
                String message = (String) extras.get(SmsRetriever.EXTRA_SMS_MESSAGE);
 String OTP = message.substring(message.lastIndexOf(":") + 1);

可以使用 SubString(Start,End) 函数

于 2019-05-21T13:56:46.003 回答