佛山阿里云代理商:android 7.0 获取短信

要获取Android 7.0上的短信,您需要先请求READ_SMS和RECEIVE_SMS权限。然后,您可以使用ContentResolver访问短信的Uri,并使用Cursor读取短信。以下是一个示例代码:

if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_SMS) == PackageManager.PERMISSION_GRANTED
        && ContextCompat.checkSelfPermission(this, Manifest.permission.RECEIVE_SMS) == PackageManager.PERMISSION_GRANTED) {
    Uri uri = Uri.parse("content://sms/inbox");
    Cursor cursor = getContentResolver().query(uri, null, null, null, null);
    while (cursor != null && cursor.moveToNext()) {
        String address = cursor.getString(cursor.getColumnIndex("address"));
        String body = cursor.getString(cursor.getColumnIndex("body"));
        // Do something with the address and body of the SMS
    }
    if (cursor != null) {
        cursor.close();
    }
} else {
    // Request runtime permissions
}

请注意,您需要在应用中处理运行时权限,以避免在用户未授予权限的情况下访问短信。

获取短信需要获取短信读取权限,Android 6.0 及以上版本需要动态申请权限。

首先,在 AndroidManifest.xml 文件中添加以下权限:

<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>

然后,在代码中添加动态权限申请:

佛山阿里云代理商:android 7.0 获取短信
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    // 判断 Android 版本是否大于等于 6.0
    if (checkSelfPermission(Manifest.permission.READ_SMS) != PackageManager.PERMISSION_GRANTED) {
        // 如果未授权,则向用户申请授权
        requestPermissions(new String[] {Manifest.permission.READ_SMS}, 1);
    }
}

// 授权结果回调方法
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    if (requestCode == 1) {
        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
            // 用户授权
            // 进行获取短信的操作
        } else {
            // 用户拒绝授权
            Toast.makeText(this, "请授权以获取短信", Toast.LENGTH_SHORT).show();
        }
    }
}

获取短信的代码如下:

Uri uri = Uri.parse("content://sms/inbox");
// 查询条件,只查询发送号码包含139的短信
String selection = "address like '%139%'";
Cursor cursor = getContentResolver().query(uri, null, selection, null, null);
if (cursor != null && cursor.getCount() > 0) {
    // 遍历短信
    while (cursor.moveToNext()) {
        String address = cursor.getString(cursor.getColumnIndex("address"));
        String body = cursor.getString(cursor.getColumnIndex("body"));
        // 处理短信
    }
    cursor.close();
}

发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/159255.html

Like (0)
luotuoemo的头像luotuoemo
Previous 2024年3月10日 21:45
Next 2024年3月10日 22:26

相关推荐

  • 企业对阿里云企业邮箱定制化的功能创新期望和实际应用效果评估?

    企业对阿里云企业邮箱定制化的功能创新期望和实际应用效果评估 引言 在信息化时代,企业邮箱已经成为企业内部与外部沟通的重要工具之一。阿里云企业邮箱以其稳定、安全、易用等特点受到众多企业的青睐。然而,随着企业对沟通效率与信息安全的需求逐步提升,越来越多的企业希望邮箱服务提供更加定制化的功能,以满足特定业务需求。本文将围绕企业对阿里云企业邮箱的功能创新期望、实际应…

    2024年10月29日
    2800
  • 阿里云国际站:android 项目将csv文件写入sqlite数据库 代码

    以下是一个将 CSV 文件写入 SQLite 数据库的 Android 项目代码示例: 在您的 Android 项目的 build.gradle 文件中添加 SQLite 和 CSV 相关依赖项: implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:2.0.1&#…

    2024年2月3日
    6900
  • 渠县阿里云企业邮箱代理商:阿里云免费邮箱个人版登录

    渠县阿里云企业邮箱代理商:阿里云免费邮箱个人版登录 阿里云企业邮箱是一种专业、安全、稳定的企业级电子邮件服务,为企业和个人提供了完善的电子邮件解决方案。以下是阿里云企业邮箱的几个优势: 1. 稳定可靠 阿里云企业邮箱基于云计算技术构建,拥有强大的服务器集群和备份机制,保证了邮件系统的高可用性和稳定性。用户可以放心地使用企业邮箱进行日常工作和沟通。 2. 安全…

    2024年2月15日
    8300
  • 阿里云培训中心怎么进入面试

    去教育培训机构面试,面试官一般会问鞋什么问题?面试流程大概是怎样的? 1.要看你是去英语培训机构还是计算机培训机构啦,不过这两种类型的机构问的都大同小异。2.怎么看待教师这个行业?3.如果你想应聘咨询师,而非一线教师岗位,还要有亲和力以及良好的口才。优秀的自我介绍一定不能少噢!4.课程试讲环节,一定要把握好,面试官一定会问些相关问题的。5.然后可能还会有笔试…

    2023年8月28日
    8400
  • 茂名阿里云代理商:安装模板

    作为茂名阿里云代理商,您可以按照以下步骤安装模板: 登录阿里云官方网站,进入控制台页面。 在控制台页面上方的搜索框中输入“产品与服务”,然后选择“云市场”。 在云市场页面上方的搜索框中输入您想安装的模板关键字,然后点击搜索按钮。 在搜索结果中找到符合您需求的模板,点击进入详情页面。 在模板详情页面上,您可以查看模板的描述、评价、价格等信息。如果您决定购买该模…

    2024年1月12日
    10000

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

4000-747-360

在线咨询: QQ交谈

邮件:ixuntao@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
购买阿里云服务器请访问:https://www.4526.cn/