java - 明确地将新邮件保存到收件箱

标签 java android sms android-contentprovider inbox

有关content://sms/inbox的问题:

1) 是否建议将传入消息显式存储到收件箱?
2) 如果 Android 设备具有 native 消息传递应用程序并且安装了我的消息传递应用程序,然后我将传入消息明确存储到收件箱,消息会重复吗?
3)无论是否有消息应用程序,Android都会自动将新消息存储到收件箱吗?

谢谢。

最佳答案

关于短信,详细信息因 Android 版本而异。在 KitKat 之前,SMS API 没有文档记录。 KitKat,默认短信应用程序的概念 推出,短信 API 公开。

Is it advisable to explicitly store incoming messages to inbox?

  • Pre-KitKat:是的。如果您的应用是安装的主要应用或唯一的 SMS,并且没有其他应用收到 SMS_RECEIVED 广播。

  • KitKat 及其他:如果您的应用程序是默认 SMS 应用程序,则它负责将传入消息写入提供程序。如果它不是默认值,那么它就无关紧要,因为您的应用程序将没有对提供程序的写访问权限。

What if an android device has a native messaging app and my messaging app was installed to it, and then I explicitly store incoming messages to inbox, will the messages duplicate?

  • Pre-KitKat:是的。除非您的应用拦截并中止 SMS_RECEIVED 广播,否则 native 应用将写入消息。

  • KitKat 及其他应用程序:在任何给定时间只有一个应用程序可以成为默认应用程序,并且只有它具有对提供程序的写访问权限。当某个应用未被选为默认应用时,预计它会相应地调整其行为。

Does android automatically store new messages to inbox regardless if there is a messaging application?

  • Pre-KitKat:否。 native 消息应用程序配置为处理写入。系统不会自动执行此操作。

  • KitKat 及其他:否。如上所述,默认应用程序负责将传入消息写入提供程序。

关于java - 明确地将新邮件保存到收件箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25726689/

相关文章:

Android 蓝牙连接到 ELM327/OBD2 设备

android - 在 Unity 2018.1 Android gradle 构建失败,出现 'library uses same package'

linux - 将 Linux 重新同步到 NTP 服务器

java - Android:以不可见的方式接收来自指定号码的短信

java - 如何分割具有 0 个或多个尾随和前导空格的任何非单词字符?

java - 使用 Stax 解析器解析 XML 1.1 文档时出现错误

Java:递增/递减运算符的前缀/后缀?

Android Webview使后退按钮转到上一页

android - 从 Activity A 调用方法到 Activity B 时出错

java - 使用 HttpClient Post 登录站点