2010-06-16 46 views
0

我想确认新MMS彩信的来临(将它下载到收件箱后)。我做了以下情况:检测新的彩信(Android 2.1)

private MMSContentObserver mMmsCO; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    h = new Handler(); 
    mMmsCO = new MMSContentObserver(h); 
    getContentResolver().registerContentObserver (Uri.parse("content://mms"), true, mMmsCO); 
} 

其中

private class MMSContentObserver extends ContentObserver { 

    public MMSContentObserver(Handler h) { 
     super(h); 
    }    

    @Override 
    public boolean deliverSelfNotifications() { 
     return false; 
    } 

    @Override 
    public void onChange(boolean selfChange) { 
     super.onChange(selfChange); 
    } 
} 

然而,的onChange是没有得到调用。我错过了什么? 在此先感谢。

+0

SMS内容提供者不是Android SDK的一部分:http://android-developers.blogspot.com/2010/05/be-careful-with-content-providers.html – CommonsWare 2010-06-16 19:21:25

+0

我遇到同样的问题。观察“content:// mms-sms”和“content:// mms-sms/conversations”也不适用于我。他们适用于发送短信,但不能发送彩信。 – mahdaeng 2012-02-14 06:29:34

回答

3

MMS内容提供商不是SDK的一部分,但可以使用...这里真正的答案会很好,因为所有消息传递应用都以某种方式或形式使用content:// mms。

由于谷歌决定不规范彩信,我们都必须在每一个手机上测试,但我们仍然需要能够处理我们的应用程序中的彩信。