我想通过我的 android 访问存储在收件箱中的消息
项目。我已经尝试过为sms形成URI的方法(content://sms/
收件箱),然后查询各种参数。

但是我找不到任何用于阅读收件箱短信的文档
标准的 Android 开发者文档。
在各个网站上都提到该内容已被
从标准 sdk 中删除。应用程序可能不支持更高
安卓版本。

那么,我如何创建一个应用程序来从收件箱中读取短信
在 android 的 future 版本中可靠。

请帮忙 !!

最佳答案

它在我的里程碑中运行良好(sdk 更新 2.1)

 public List<String> getSms() {
        Uri mSmsQueryUri = Uri.parse("content://sms/inbox");
        List<String> messages = new ArrayList<String>();
        Cursor cursor = null;
        try {
            cursor = mContentResolver.query(mSmsQueryUri, null, null, null, null);
            if (cursor == null) {
                Log.i(TAG, "cursor is null. uri: " + mSmsQueryUri);
                return messages;
            }

            for (boolean hasData = cursor.moveToFirst(); hasData; hasData = cursor.moveToNext()) {
                final String body = cursor.getString(cursor.getColumnIndexOrThrow("body"));
                messages.add(body);
            }
        } catch (Exception e) {
            Log.e(TAG, e.getMessage());
        } finally {
            cursor.close();
        }
        return messages;
    }

请确保您有读取短信的权限:
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>

关于android - 访问没有内容 URI 的消息收件箱(内容//:sms),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3046215/

10-11 02:42