Intereting Posts
Android In-App Billing, отсутствие покупок Активность с фрагментами не изменяется при открытии клавиатуры Android: Google Фото, как вид сетки с функцией масштабирования Использование JSON для создания объекта в Groovy / Grails Ошибка Gradle после включения facebook sdk Поиск по номеру телефона Создание приложения в Android-источнике компилируется в систему / приложение вместо данных / приложений? Могу ли я иметь один ключ API Карт Google для всех моих приложений, не регистрируя их имена пакетов? Объединение двух png-файлов в android Не удается установить версию отладки и выпуска на том же устройстве ADB – соединение VirtualBox Android – Как переопределить кнопку «Назад», чтобы она не закончила () мою активность? Как удалить все временные файлы, созданные createTempFile при выходе из приложения в Android? Как создать древовидную структуру в Android? Изменить размер буфера на MediaPlayer

Я хочу получать и просматривать sms-разговоры?

ContentResolver cr = getContentResolver(); Cursor cur = cr.query(Uri.parse("content://sms/conversations/"), null,null,null, null); 

Не работает почему?

 <uses-permission android:name="android.permission.READ_SMS" /> 

Добавлены разрешения.

 08-12 10:56:39.188: ERROR/AndroidRuntime(377): Caused by: android.database.sqlite.SQLiteException: near ",": syntax error: , while compiling: SELECT , body AS snippet FROM sms, (SELECT thread_id AS group_thread_id, MAX(date)AS group_date,COUNT(*) AS msg_count FROM sms GROUP BY thread_id) AS groups WHERE (sms.thread_id = groups.group_thread_id AND sms.date =groups.group_date) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:143) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:111) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.content.ContentProviderProxy.bulkQuery(ContentProviderNative.java:279) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.content.ContentProviderProxy.query(ContentProviderNative.java:298) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.content.ContentResolver.query(ContentResolver.java:152) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at com.GetMessages.GetConversations$FetchData.doInBackground(GetConversations.java:33) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at com.GetMessages.GetConversations$FetchData.doInBackground(GetConversations.java:1) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at android.os.AsyncTask$2.call(AsyncTask.java:185) 08-12 10:56:39.188: ERROR/AndroidRuntime(377): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:256) 

Solutions Collecting From Web of "Я хочу получать и просматривать sms-разговоры?"

Вы можете получить sms-inbox:

 Uri mSmsinboxQueryUri = Uri.parse("content://sms/inbox"); Cursor cursor1 = getContentResolver().query(mSmsinboxQueryUri,new String[] { "_id", "thread_id", "address", "person", "date","body", "type" }, null, null, null); startManagingCursor(cursor1); String[] columns = new String[] { "address", "person", "date", "body","type" }; if (cursor1.getCount() > 0) { String count = Integer.toString(cursor1.getCount()); while (cursor1.moveToNext()){ String address = cursor1.getString(cursor1.getColumnIndex(columns[0])); String name = cursor1.getString(cursor1.getColumnIndex(columns[1])); String date = cursor1.getString(cursor1.getColumnIndex(columns[2])); String msg = cursor1.getString(cursor1.getColumnIndex(columns[3])); String type = cursor1.getString(cursor1.getColumnIndex(columns[4])); } } 

Вы можете получать другие отправленные элементы, изменяя URI.

 Uri mSmsinboxQueryUri = Uri.parse("content://sms/sent"); 

Вы можете сделать это с помощью MMS также с URI:

 RECEIVED_MMS_CONTENT_URI = "content://mms/inbox"; SENT_MMS_CONTENT_URI = "content://mms/sent"; 

Для SMS-MMS:

 Uri uri = Uri.parse("content://mms-sms/conversations/"); 

Наконец, получил то, что мне нужно!

 ContentResolver contentResolver = getContentResolver(); final String[] projection = new String[]{"*"}; Uri uri = Uri.parse("content://mms-sms/conversations/"); Cursor query = contentResolver.query(uri, projection, null, null, null); 

Я не уверен, и я еще не пробовал, но я думаю, что это может быть вашей работой.

 Uri uriSms = Uri.parse("content://sms/inbox"); Cursor c = getContentResolver().query(uriSms, null,null,null,null); 

Я нашел это ранее из этого ответа: Как программно удалить SMS-сообщение из папки «Входящие» на Android?

 String[] projection = {"thread_id", "MAX(date)", "COUNT(*) AS msg_count", "body"}; Cursor cursor = getContentResolver().query(Telephony.Sms.CONTENT_URI, projection, "thread_id) GROUP BY (thread_id", null, null);