Bar*_*ica 6 sms android android-contentprovider samsung-mobile
此问题已多次报告,但仍未解决.我在三星的开发者网站或StackOverflow中阅读了与该主题有关的所有消息/帖子
让我再说几句话来描述整个问题:
开发人员过去通过简单查询获取SMS对话列表,例如:
Uri.parse("content://mms-sms/conversations/");
Cursor cursor = context.getApplicationContext().getContentResolver().query(uri, null, null, null, null);
或类似的东西.关键点这里的URI地址:content://mms-sms/conversations
每个人都知道这是非官方的,而且他自己承担风险 - 请参见此处的证据链接
但是,关键点这里有一个简单的事实,这个代码只能在三星Galaxy S3和Galaxy Tab 2的某些型号中正常工作.它NullPointerException使用stacktrace 生成:
java.lang.NullPointerException
    at android.os.Parcel.readException(Parcel.java:1431)
    at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:188)
    at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:140)
    at android.content.ContentProviderProxy.query(ContentProviderNative.java:366)
    at android.content.ContentResolver.query(ContentResolver.java:372)
    at android.content.ContentResolver.query(ContentResolver.java:315)
在世界/宇宙其他地方的所有其他设备中,它运作良好!奇怪,是吧?
我知道这样的答案:嘿伙计,这是你的问题,因为前面提到的URI的存在/正确性不能保证,但是,有人有更有成效的想法吗?
我已经通过他们的论坛向三星的开发者发布了问题.
Bar*_*ica 10
最后我想到了如何克服上述问题(我不确定它是错误,但无论如何它看起来像一个错误).
可以通过此查询检索对话列表:
Uri.parse("content://mms-sms/conversations?simple=true"); 
Cursor cursor = context.getApplicationContext().getContentResolver().query(uri, null, null, null, null);
关键点这里的URI content://mms-sms/conversations?simple=true.
| 归档时间: | 
 | 
| 查看次数: | 3987 次 | 
| 最近记录: |