android sim 卡短信读写
因为对短信读写操作的api 被隐藏了 , 我们须要使用《Java反射机制的学习》一文中提到的反射的方法得到隐藏API
。
这有一个用例大家能够下载http://zhushou.360.cn/detail/index/soft_id/1608427
http://download.csdn.net/detail/qgy92320/8967551
android写sim卡短信
/***
* 1) byte[] smsc : 短信服务中心的地址,个人觉得在拷贝到SIM卡过程中能够为空。
* 2) byte[] pdu : 中文翻译是协议数据单元,这个參数最为重要,一会我们会做具体地解释说明。
* 3) int status : 短信存储在Icc卡上的状态。有4种状态,1是已读,3是未读,5是已发送。7是未发送。
* @param smsc
* @param pdu
* @param status
*/
public boolean writeSMStoIcc(byte[] smsc,byte[] pdu,int status){
// mKeyboardHelper = new ReflectionInternal(this,"android.telephony.SmsManager");
//调用类,声明类,mKeyboardView。mPasswordEntry,为须要传递的參数
// mKeyboardHelper.setInt("copyMessageToIcc", 0);
boolean flag = false;
SmsManager newSmsManager = SmsManager.getDefault();
try {
Class smsManagerClass = Class.forName("android.telephony.SmsManager");
Method localMethod = smsManagerClass.getMethod("copyMessageToIcc",new Class[]{byte[].class,byte[].class,Integer.TYPE});
Object[] arrayList = new Object[3];
arrayList[0] = smsc;
arrayList[1] = pdu;
arrayList[2] = status;
try {
flag = ((Boolean)localMethod.invoke(newSmsManager, arrayList)).booleanValue();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace(); } catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace(); } catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
Log.e("NoSuchMethodException","NoSuchMethodException :"+ e.getMessage());
e.printStackTrace();
} catch (ClassNotFoundException ex) {
// TODO Auto-generated catch block
Log.e("ClassNotFoundException","ClassNotFoundException :"+ ex.getMessage());
ex.printStackTrace();
}
return flag;
}
android 读sim卡短信
public ArrayList<SmsMessage> getSmsList(){
ArrayList<SmsMessage> list = new ArrayList<SmsMessage>();
SmsManager newSmsManager = SmsManager.getDefault();
try {
Class<?> smsManagerClass = Class.forName("android.telephony.SmsManager");
Method localMethod = smsManagerClass.getMethod("getAllMessagesFromIcc",null);
try {
list = (ArrayList<SmsMessage>)localMethod.invoke(newSmsManager, null);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
Log.e("NoSuchMethodException","NoSuchMethodException :"+ e.getMessage());
e.printStackTrace();
} catch (ClassNotFoundException ex) {
// TODO Auto-generated catch block
Log.e("ClassNotFoundException","ClassNotFoundException :"+ ex.getMessage());
ex.printStackTrace();
}
return list;
}
android sim 卡短信读写的更多相关文章
- android自动获取短信验证码
前言:android应用的自动化测试必然会涉及到注册登录功能,而许多的注册登录或修改密码功能常常需要输入短信验证码,因此有必要能够自动获得下发的短信验证码.主要就是实时获取短信信息.android上获 ...
- Android自动读取短信验证码
Android自动读取短信验证码 extends:http://www.cnblogs.com/jiayaguang/p/4366384.html,http://blog.csdn.net/yung ...
- Android 趣味应用—— 短信编辑器
修改短信数据库,从而生成任意手机号发送的短信. AndroidManifest.xml <?xml version="1.0" encoding="utf-8&qu ...
- android之发送短信程序
首先改写activity_main.xml文件 代码如下: <LinearLayout xmlns:android="http://schemas.android.com/apk/re ...
- android自动填写短信验证码
广播类 package com.examp.azuoyoutong.listner; import java.util.regex.Matcher;import java.util.regex.Pat ...
- Android通讯:短信
Android通讯之短信功能实现: 使用android.telephony.SmsManager对象,可以发送短信和彩信.// 构造回调函数,短信发送结束后,会发出对应的Intent请求Intent ...
- Android开发之短信验证码示例
在说Android中的短信验证码这个知识点前,我们首先来了解下聚合数据 聚合数据介绍 聚合数据是一家国内最大的基础数据API提供商,专业从事互联网数据服务.免费提供从天气查询.空气质量.地图坐标到金融 ...
- android 管理手机短信
为了看代码方便,一边在网上google资料,一边看Android java 源代码. 偶然发现了一个类MmsSmsDatabaseHelper.java,原来android将所有的短信信息都存入了mm ...
- android 中管理短信
为了看代码方便,一边在网上google资料,一边看Android java 源代码. 偶然发现了一个类MmsSmsDatabaseHelper.java,原来android将所有的短信信息都存入了mm ...
随机推荐
- nginx自动切割访问日志
Web 访问日志 (access_log) 记录了所有外部客户端对Web服务器的访问行为,包含了客户端IP,访问日期,访问的URL资源,服务器返回的HTTP状态码等重要信息. 一条典型的Web访问日志 ...
- python 模块BeautifulSoup使用
BeautifulSoup是一个专门用于解析html/xml的库.官网:http://www.crummy.com/software/BeautifulSoup/ 说明,BS有了4.x的版本了.官方说 ...
- Python转码问题的解决方法:ignore,replace,xmlcharrefreplace
比如,若要将某个String对象s从gbk内码转换为UTF-8,可以如下操作 s.decode('gbk').encode('utf-8′) 可是,在实际开发中,我发现,这种办法经常会出现异常: Un ...
- objective-III 窗口应用程序
objective-III 一.创建窗口应用程序 打开xcode->create->在iso目录下选择empty-null->创建 在打开的项目文件名上右击NEW FILE,在io ...
- C语言中没有main函数生成可执行程序的几种方法
1.define预处理指令 这种方式很简单,只是简单地将main字符串用宏来代替,或者使用##拼接字符串.示例程序如下: #include <stdio.h> #define begin ...
- 误mlogc.c:32:23: error: curl/curl.h: No such file or directory
出现以下错误: mlogc.c:32:23: error: curl/curl.h: No such file or directory mlogc.c:1091: error: expected ' ...
- 欧拉函数K - Relatives
欧拉函数是积性函数——若m,n互质,φ(mn)=φ(m)φ(n). 特殊性质:当n为奇数时,φ(2n)=φ(n), φ(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…..( ...
- enum型常量
就像结构体一样,定义一个枚举类型是不分配内存的,仅仅是定义了一个类型的名字,下面可以使用这个名字定义枚举类型的变量 枚举即将变量的值一一列举出来变量的值只限于列举出来的值得范围内 简单的应用如下 #i ...
- AzureDev 社区活动获奖者公布
今天,我们高兴地宣布 AzureDev社区活动的获奖者,并向这 5 个非盈利技术教育组织发放 10 万美元奖金.在 2013 年的Build大会上宣布的 AzureDev 活动专注于通过代码改变世界, ...
- UVa 725暴力求解
A - Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Su Description Writ ...