开发者社区> 问答> 正文

如何在Android中以编程方式从设备读取SMS消息?

我想从设备中检索SMS消息并显示它们吗?

展开
收起
Puppet 2020-01-19 09:17:37 555 0
1 条回答
写回答
取消 提交回答
  • 使用内容解析器(“ content:// sms / inbox”)读取收件箱中的SMS。

    
    // public static final String INBOX = "content://sms/inbox";
    // public static final String SENT = "content://sms/sent";
    // public static final String DRAFT = "content://sms/draft";
    Cursor cursor = getContentResolver().query(Uri.parse("content://sms/inbox"), null, null, null, null);
    
    if (cursor.moveToFirst()) { // must check the result to prevent exception
        do {
           String msgData = "";
           for(int idx=0;idx<cursor.getColumnCount();idx++)
           {
               msgData += " " + cursor.getColumnName(idx) + ":" + cursor.getString(idx);
           }
           // use msgData
        } while (cursor.moveToNext());
    } else {
       // empty box, no SMS
    }
    

    请添加READ_SMS权限。

    希望对您有所帮助:)

    2020-01-19 09:17:53
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载