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:
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
Everyone knows that it's unofficial and one's doing it on his own risk - see proof link here
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.
Uri
"content://mms-sms/conversations?simple=true". How would you do that? – Kisung