Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SGS-3 bug related to SMS conversations list?

This issue was reported several times, but still not resolved yet. I read all messages/thread which somehow related to this topic either in Samsung's developers site or in StackOverflow

Let me again describe whole problem just in few words:

  1. Developers used to get list of SMS conversations through simple query like:

    Uri.parse("content://mms-sms/conversations/"); Cursor cursor = context.getApplicationContext().getContentResolver().query(uri, null, null, null, null);

    or something like this. Key point here's URI address: content://mms-sms/conversations

  2. Everyone knows that it's unofficial and one's doing it on his own risk - see proof link here

  3. But, critical point here's a simple fact this code doesn't work properly only in Samsung Galaxy S3 and some models of Galaxy Tab 2. It produces NullPointerException with 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)

In all other devices of the rest of the World/Universe it works well! Strange, huh?

I know answers like: hey dude, it's your problem, since presence/correctness of aforementioned URI doesn't guaranteed, nevertheless, does someone has more productive idea?

I have already posted question to Samsung's developers through their forum.

like image 679
Barmaley Avatar asked Nov 25 '12 16:11

Barmaley


1 Answers

In the end I've figured how to overcome aforementioned issue (I am not sure that it's bug, but anyway it looks like a bug).

List of conversations can be retrieved through this query:

Uri.parse("content://mms-sms/conversations?simple=true"); 
Cursor cursor = context.getApplicationContext().getContentResolver().query(uri, null, null, null, null);

Keypoint here's URI content://mms-sms/conversations?simple=true.

like image 129
Barmaley Avatar answered Oct 23 '22 09:10

Barmaley