安卓监听短信
1. 设置权限
在AndroidManifest.xml文件中添加以下权限:
<usespermission android:name="android.permission.RECEIVE_SMS" /><usespermission android:name="android.permission.READ_SMS" /><usespermission android:name="android.permission.WRITE_SMS" />
2. 创建广播接收器
创建一个类,继承BroadcastReceiver,并重写onReceive方法。
public class SmsReceiver extends BroadcastReceiver { @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 smsMessage = SmsMessage.createFromPdu((byte[]) pdu); String sender = smsMessage.getDisplayOriginatingAddress(); String messageBody = smsMessage.getDisplayMessageBody(); // 处理短信内容 } } } }}
3. 注册广播接收器
在AndroidManifest.xml文件中注册广播接收器,并设置优先级。
<receiver android:name=".SmsReceiver" > <intentfilter android:priority="100" > <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </intentfilter></receiver>
4. 设置监听器
在Activity或Service中设置监听器。
ContentResolver contentResolver = getContentResolver();contentResolver.registerContentObserver(Uri.parse("content://sms/inbox"), true, new ContentObserver(null) { @Override public void onChange(boolean selfChange) { super.onChange(selfChange); // 处理短信内容 }});
5. 单元表格
步骤 | 描述 |
1 | 设置权限 |
2 | 创建广播接收器 |
3 | 注册广播接收器 |
4 | 设置监听器 |
免责声明:本站内容(文字信息+图片素材)来源于互联网公开数据整理或转载,仅用于学习参考,如有侵权问题,请及时联系本站删除,我们将在5个工作日内处理。联系邮箱:chuangshanghai#qq.com(把#换成@)