登录
|
立即注册
开启辅助访问
设为首页
收藏本站
首页
Portal
社区
BBS
签到
泛站客
»
社区
›
网站技术
›
技术教程
›
android 截获短信_Android
返回列表
android 截获短信_Android
[复制链接]
梦里不知身是客
当前离线
积分
25
梦里不知身是客
9
主题
25
帖子
25
积分
新手上路
新手上路, 积分 25, 距离下一级还需 25 积分
新手上路, 积分 25, 距离下一级还需 25 积分
积分
25
收听TA
发消息
发表于 2024-10-19 10:17:51
|
显示全部楼层
|
阅读模式
在Android中,截获短信需要使用广播接收器(BroadcastReceiver),以下是详细的步骤:
zbhj1efx01apddv.jpg
(图片来源网络,侵删)
1、添加权限
在AndroidManifest.xml文件中,需要添加以下权限:
2、注册广播接收器
在AndroidManifest.xml文件中,注册一个广播接收器,用于接收短信:
3、创建广播接收器类
创建一个名为SmsReceiver的类,继承自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();
// 处理短信内容,例如显示在界面上或者保存到数据库等
}
}
}
}
}
4、获取短信内容
在SmsReceiver类的onReceive方法中,可以通过以下代码获取短信内容:
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();
// 处理短信内容,例如显示在界面上或者保存到数据库等
}
}
}
5、处理短信内容
在获取到短信内容后,可以根据需求进行处理,例如显示在界面上或者保存到数据库等。
回复
使用道具
举报
下一页 »
返回列表
发表回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
快速回复
返回顶部
返回列表