要实现自动填充短信验证码,你可以使用以下步骤:
SmsRetriever API来获取收到的短信。首先,在你的应用中添加以下依赖项:implementation 'com.google.android.gms:play-services-auth:19.2.0' implementation 'com.google.android.gms:play-services-auth-api-phone:17.5.0' 然后在你的代码中,使用以下方法来获取短信:
SmsRetrieverClient client = SmsRetriever.getClient(context); Task<Void> task = client.startSmsRetriever(); task.addOnSuccessListener(new OnSuccessListener<Void>() { @Override public void onSuccess(Void aVoid) { // SMS retrieval has been started successfully } }); task.addOnFailureListener(new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { // Failed to start SMS retrieval } }); 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: // SMS retrieval timeout break; default: // Other error occurred break; } } } EditText输入框,你可以使用以下代码来填充验证码:EditText verificationCodeEditText = findViewById(R.id.verification_code_edit_text); verificationCodeEditText.setText(verificationCode); 通过上述步骤,你就可以在Android应用中实现自动填充短信验证码。