こんにちは、私はAndroid SMSアプリを開発しており、組み込みのメッセージングアプリからSMSをフェッチしています
Uri uriSMSURI = Uri.parse("content://mms-sms/conversations?simple=true");
Cursor cursor = getContentResolver().query(uriSMSURI, new String[] {"*"}, null, null, "date desc");
while (cursor.moveToNext())
{
snippet = cursor.getString(cursor.getColumnIndexOrThrow("snippet"));
Long date = cursor.getLong(cursor.getColumnIndexOrThrow("date"));
recipient_ids = cursor.getString(cursor.getColumnIndexOrThrow("recipient_ids"));
recipient_ids.split(" ");
Cursor c = getContentResolver().query(Uri.parse("content://mms-sms/canonical-addresses"), null, "_id = " + recipient_ids, null, null);
c.moveToFirst();
phonenumber= c.getString(c.getColumnIndexOrThrow("address"));
}
グループ SMS がある場合、以下のように myApp で強制終了しています
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.Sms}: android.database.sqlite.SQLiteException: near "8": syntax error: , while compiling: SELECT _id, address FROM canonical_addresses WHERE _id = 4 8
グループ SMS を読み取って _id と比較するにはどうすればよいですか。助けてください。ありがとう!