国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現在的位置是:首頁 » python編程資訊

資訊內容

Python怎么接收手機短信?

極客小將2020-12-01-
簡介python解決接口測試獲取手機驗證碼問題的方法:Android在收到短信后會發送一個Action為android.provider.Telephony.SMS_RECEIVED的廣播,所以我們只需要寫個類繼承BroadcastReceiver就可以很容易地監聽到短信。package co

sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

python解決接口測試獲取手機驗證碼問題的方法:sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

Android在收到短信后會發送一個Action為android.provider.Telephony.SMS_RECEIVED的廣播,所以我們只需要寫個類繼承BroadcastReceiver就可以很容易地監聽到短信。sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

package com.example.getsms; import android.content.BroadcastReceiver; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.telephony.SmsMessage; import android.text.TextUtils; import android.util.Log; public class SmsInterceptReceiver extends BroadcastReceiver { private final String TAG = "SmsRec";    private static final String SMS_EXTRA_NAME ="pdus";    @Override  public void onReceive(Context context, Intent intent) {  // TODO Auto-generated method stub  String message = "";    Log.e(TAG, "free message " );        Bundle extras = intent.getExtras();     if ( extras != null ) {       try {       Object[] smsExtra = (Object[]) extras.get( SMS_EXTRA_NAME );         ContentResolver contentResolver = context.getContentResolver();                  Log.e(TAG, "free message " );         for ( int i = 0; i < smsExtra.length; ++i ) {           SmsMessage sms = SmsMessage.createFromPdu((byte[]) smsExtra[i]);                      String body = sms.getMessageBody().toString();           message += body;         }                          Log.e(TAG, "free message : " + message);       } catch (Exception e) {       // TODO: handle exception       Log.e(TAG, e.getMessage());       }     }      } }

AndroidManifest.xml里注冊一下接收器:sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

 <receiver android:name=".SmsInterceptReceiver">      <intent-filter>      <action android:name="android.provider.Telephony.SMS_RECEIVED" />      </intent-filter>     </receiver>

添加權限:sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

<uses-permission android:name="android.permission.RECEIVE_SMS"/>

python 代碼,主要通過adb log來獲取apk包所截取的短信信息,然后進行分析后既可使用。sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

__author__ = 'guozhenhua' #coding=utf-8 import urllib2 import os,time #解析短信驗證碼 os.system("adb logcat -c") cmd="adb logcat -d |findstr E/SmsRec" #time.sleep(30); while(1):   smscode= os.popen(cmd).read()   #print smscode   if (smscode!=""):     smscode=smscode.split("驗證碼:")[1].split(",")[0]     break; print "驗證碼是:"+smscode

更多Python知識請關注Python自學網sNB少兒編程網-Scratch_Python_教程_免費兒童編程學習平臺

預約試聽課

已有385人預約都是免費的,你也試試吧...

主站蜘蛛池模板: 西贡区| 福贡县| 英超| 乐陵市| 嘉峪关市| 垫江县| 政和县| 三亚市| 武强县| 固安县| 兴安盟| 玛多县| 巴林左旗| 乌兰县| 东山县| 和田市| 南乐县| 区。| 张掖市| 蓬莱市| 遵义市| 建湖县| 兴宁市| 平定县| 太康县| 商城县| 都江堰市| 澜沧| 湟中县| 临洮县| 文昌市| 临洮县| 万载县| 禹州市| 湾仔区| 淮阳县| 昌宁县| 浙江省| 陕西省| 潞城市| 长汀县|