我想实现一个在完全下载的MMS后触发的BroadcastReceiver。我已经了解了android.provider.Telephony.WAP_PUSH_RECEIVED
操作,但这是在收到邮件的第一部分时触发的,而不是在邮件完全下载时(即新邮件指示符图标显示的时候)。
经过一番挖掘后,我在Messaging源代码(android.intent.action.TRANSACTION_COMPLETED_ACTION
)中发现了一个名为/src/com/android/mms/transaction/TransactionService.java
的操作,我认为在下载MMS后使用,但是我的BroadcastReceiver当这个动作发生时似乎没有被调用,所以我不确定这个动作是不是广播还是发生了什么。
感谢您的任何建议!
答案 0 :(得分:2)
我想出了这个 - 至少一个对我有用的解决方案。
我创建了一个ContentObserver
(在我提出这个问题时我不知道),它会监听URI content://mms-sms/
和子项的变化。它在MMS接收过程中被多次调用,其中一个似乎是在下载MMS之后发生的。