我想通过我的 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/