android - 如何检测在 Android 中完全下载的彩信?

标签 android android-intent mms

我想实现一个在 MMS 完全下载后触发的 BroadcastReceiver。我已经知道 android.provider.Telephony.WAP_PUSH_RECEIVED 操作,但这是在收到消息的第一部分时触发的,而不是在消息完全下载时触发​​的(这是新消息指示器图标出现)。

经过一番挖掘,我在消息源代码 (/src/com/android/mms/transaction/TransactionService.java),我认为是在下载彩信后使用的,但是当这个 Action 发生时我的 BroadcastReceiver 似乎没有被调用,所以我不确定这个 Action 是否不是广播或正在发生的事情。

感谢您的任何建议!

最佳答案

我想通了 - 至少是一个适合我的解决方案。

我创建了一个 ContentObserver(当我问这个问题时我不知道它的存在),它监听 URI content://mms-sms/和 child 的变化。在彩信接收过程中被多次调用,其中一次似乎发生在彩信下载之后。

关于android - 如何检测在 Android 中完全下载的彩信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6726158/

相关文章:

android - 在android中使用地理编码器从纬度经度查找城市名称和国家名称

android - TextView 中的文本不滚动,即使我在 android 的 xml 中设置椭圆大小 ="marquee"

android - 如何读取android xml文件中的属性文件值

android - 删除不适用于 android pie 的应用 Intent

android - Android中如何查询彩信登录

android - 我想导航到屏幕并清除堆栈中的所有导航屏幕

Android OrderedBroadcast 在发布版本中不起作用

android - onActivityResult 参数的 Intent 是什么

android - 彩信数据总是错误

Android编程-发送邮件