溫馨提示×

Android怎么通過手機自動獲取短信驗證碼

小億
144
2023-07-28 13:54:05
欄目: 編程語言

要通過手機自動獲取短信驗證碼,您可以使用以下方法:
1. 使用短信廣播接收器:創(chuàng)建一個廣播接收器,用于接收手機收到的短信。在接收到短信時,提取驗證碼并進行處理。
首先,在AndroidManifest.xml文件中注冊短信廣播接收器:
```xml

```
然后,創(chuàng)建SmsReceiver.java文件:
```java
public class SmsReceiver extends BroadcastReceiver {
   private static final String TAG = "SmsReceiver";

   @Override
   public void onReceive(Context context, Intent intent) {
       Bundle bundle = intent.getExtras();
       if (bundle != null) {
           Object[] pdus = (Object[]) bundle.get("pdus");
           if (pdus != null) {
               for (Object pdu : pdus) {
                   SmsMessage sms = SmsMessage.createFromPdu((byte[]) pdu);
                   String message = sms.getMessageBody();
                   // 在此處提取短信中的驗證碼并進行處理
               }
           }
       }
   }
}
```
2. 使用SMS Retriever API:該API提供了一種更簡單的方式來自動獲取短信驗證碼,而無需處理短信廣播接收器。
首先,在您的應(yīng)用的build.gradle文件中添加依賴項:
```
implementation 'com.google.android.gms:play-services-auth:19.2.0'
```
然后,創(chuàng)建一個Activity來請求獲取短信驗證碼:
```java
public class MainActivity extends AppCompatActivity {

   private static final int SMS_CONSENT_REQUEST = 123;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);

       SmsRetrieverClient client = SmsRetriever.getClient(this);
       Task

0