Android如何读取手机中的短信?

inkb_xy 2011-05-25 04:50:52
RT.

想知道这个怎么做?用到哪些方面的知识?有没有什么推荐的资料,谢谢~~!
...全文
1432 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
inkb_xy 2011-05-26
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ameyume 的回复:]

以下三篇blog貌似可以解决你的问题
1.解决db权限问题
android 的短信数据库的读取
2.读取实例
android中读取短信
[Android 机制] android怎么读取手机上的存储的短信内容呢?
[/Quote]

嗯,谢谢·~ 受教了。Thanks。
ameyume 2011-05-26
  • 打赏
  • 举报
回复
以下三篇blog貌似可以解决你的问题
1.解决db权限问题
android 的短信数据库的读取
2.读取实例
android中读取短信
[Android 机制] android怎么读取手机上的存储的短信内容呢?
六百万 2011-05-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 inkb_xy 的回复:]
引用 1 楼 fff32165 的回复:

首先创建一个接收短信的Java类文件“ReceiverDemo.java”并继承”BroadcastReceiver”;
并重写public void onReceive(Context context, Intent intent) 方法;
重写内容如下:
1: private static final String strRes = "an……
[/Quote]
也差不多嘛,先来个广播,来了消息系统就会提示, 你你可以设置一个点击广播事件, 再来判断啊
inkb_xy 2011-05-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fff32165 的回复:]

首先创建一个接收短信的Java类文件“ReceiverDemo.java”并继承”BroadcastReceiver”;
并重写public void onReceive(Context context, Intent intent) 方法;
重写内容如下:
1: private static final String strRes = "android.provider.Telep……
[/Quote]

我想,我说错了,我不是要即时读取短信,不是当短信到来的时候检测到。
而是,当有意愿时,可以从手机中读出所有的短信内容,这个可以做到么?
用什么来呢?
shbcomeon 2011-05-25
  • 打赏
  • 举报
回复
差不多 原理上我认为是这样的 定义一个广播接收者接收这个短信广播 定义它的权限码为1000 就当短信到来时 先经过我们定义的那个广播接收者 我们想怎么处理就这么处理了 是楼上那个哥们那样写
inkb_xy 2011-05-25
  • 打赏
  • 举报
回复
谢谢,够详细哈~~ Thanks~ 不过目前还有点不明白,看了那节的书后,就好了。。。
谢谢~~
六百万 2011-05-25
  • 打赏
  • 举报
回复
首先创建一个接收短信的Java类文件“ReceiverDemo.java”并继承”BroadcastReceiver”;
并重写public void onReceive(Context context, Intent intent) 方法;
重写内容如下:
1: private static final String strRes = "android.provider.Telephony.SMS_RECEIVED";
2: @Override
3: public void onReceive(Context context, Intent intent) {
4: /*
5: * 判断是否是SMS_RECEIVED事件被触发
6: */
7: if (intent.getAction().equals(strRes)) {
8: StringBuilder sb = new StringBuilder();
9: Bundle bundle = intent.getExtras();
10: if (bundle != null) {
11: Object[] pdus = (Object[]) bundle.get("pdus");
12: SmsMessage[] msg = new SmsMessage[pdus.length];
13: for (int i = 0; i < pdus.length; i++) {
14: msg[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
15: }
16: for (SmsMessage currMsg : msg) {
17: sb.append("您收到了来自:【");
18: sb.append(currMsg.getDisplayOriginatingAddress());
19: sb.append("】\n的信息,内容:");
20: sb.append(currMsg.getDisplayMessageBody());
21: }
22: Toast toast = Toast.makeText(context, "收到了短消息: " + sb.toString(),Toast.LENGTH_LONG);
23: toast.show();
24: }
25: }
26: }

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧