android手机短信获取
2024-10-15 07:08:37
关于Android中对短信的一些相关操。我看到一个文章下面我就从标题中的三个方面来对Android系统中的短信操作进行一个简单地学习。
短信发送:
由于Android中对短信发送方法的优良封装,之后对发送短信的开发就显得异常的简单了。
public static void sendMessage(Context context, String content, String phoneNumber) {
SmsManager sms = SmsManager.getDefault();
PendingIntent pi = PendingIntent.getBroadcast(context, 0, new Intent(), 0);
sms.sendTextMessage(phoneNumber, null, content, pi, null);
}
别忘了还有权限问题:
短信接收:
对于短信息的接收相对来说会复杂一些。而复杂的原因大家也应该比较容易理解——接收是不可控制的。也就是说我们的手机根本不知道什么时候会有一条短 信息过来。由于过于被动,用广播接收者。我们注册一个广播接收者,然后让这个广播接收者时 时刻刻地去监听短信息是否到达的这一事件。就这样,被动触发事件完美地解决了。下面让我们来看看这个过程:
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) {
Bundle bundle = intent.getExtras();
Object messages[] = (Object[]) bundle.get("pdus");
SmsMessage smsMessage[] = new SmsMessage[messages.length];
for (int n = 0; n < messages.length; n++) {
smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]);
}
showToast(context, "短信内容: " + smsMessage[0].getMessageBody());
}
}
添加权限:
以及在manifest中进行一个静态注册:
短信拦截:
在能够接收短信的基础上做一个短信拦截倒是简单了许多。因为能够接收,所以我只要成为第一个接收的人,并把接收到的短信不再向下传播,这就完成了短信息的拦截了。
提高优先权(1000一般最大):
阻断传播:
最新文章
- FS拓展设置
- JAVA 什么时候使用静态
- sublime mac快捷键
- HDU 4635 Strongly connected (强连通分量)
- 【Web】CDN加速效果浅析
- Two kinds of Quaternion SlerpImp (Unity)
- WordPress Comment Extra Fields插件‘swfupload.swf’跨站脚本漏洞
- 修改MySQL 5.5的max_allowed_packet属性的方法
- Java -强引用&;弱引用
- jsmart 前结合案例
- 【转】关于python中re模块split方法的使用
- 使用Pushlet将消息从服务器端推送到客户端
- HTTP之URL分解
- windows与linux下的\r\n
- 使用ranger对kafka进行鉴权
- C#-多态(十二)
- 【DWM1000】 code 解密5一ACHOR 第一次回家Main 函数
- 51Nod 1007:正整数分组(01背包)
- Eclipse中离线安装ADT插件详细教程
- 怎么用JavaScript实现tab切换
热门文章
- 005-CSS让页脚始终在底部不论页面内容多少
- vim : 依赖: vim-common (= 2:7.3.429-2ubuntu2) 但是 2:7.3.429-2ubuntu2.1 正要被安装
- zabbix监控实战<;3>; 之自定义监控实例
- day16 python之匿名函数,递归函数
- Python 官方文档&;教程
- 2018-2019-2 《网络对抗技术》Exp2 后门原理与应用 20165215
- Windows Server 2008安装IIS 7与配置
- php中time()与$_SERVER[REQUEST_TIME]用法区别
- java反射之获取所有方法及其注解(包括实现的接口上的注解),获取各种标识符备忘
- archer docker安装部署