2012-02-09 22 views
0

SMSログを取得するにはどうすればよいですか?私はちょうど、最近電話でSMSメッセージが送信されたか、電話で受信された連絡先のリストを取得できるようにしたい。SMSログを取得するにはどうすればよいですか?

CallLogsオブジェクトが見つかりましたが、これは電話でのみ有効です...私が間違っている場合は私を修正してください。

http://www.dcpagesapps.com/developer-resources/android/25-android-tutorial-call-logs

http://developer.android.com/reference/android/provider/CallLog.Calls.html

私はこれを見つけましたが、良い方法がある場合、私は思っていた....

Android 1.5: Reading SMS messages

+0

どのような連絡先が最後の数SMSメッセージが送信されたか調べる方法はありますか? – ycomp

答えて

0

申し訳ありませんが、何もアンドロイドではありませんSDKは「SMSログ」に関連しています。

1

これはSMSを取得する私の方法であり、それは素晴らしい作品です。送受信されるログは別々です。特定のサードパーティのSMSプログラムメッセージが表示されないことがあります。 phoneNumbersという文字列内の数字から送信または受信されたSMSを探し、見つかったSMSメッセージをすべて配列に追加して処理します。

public void getSMS(){ 

final String[] projection = null; 
final String selection = "address IN (" + phoneNumbers + ")"; 
final String selectionArgs[] = null; 
final String sortOrder = null; 
Cursor c = null; 

c = getContentResolver().query(
Uri.parse("content://sms/sent"), 
projection, 
selection, 
selectionArgs, 
sortOrder); 

if (c.moveToFirst() && c.isNull(c.getColumnIndex("date"))==false && c.isNull(c.getColumnIndex("address"))==false) { 

do { 

CCall call = new CCall(c.getLong(c.getColumnIndex("date")),c.getString(c.getColumnIndex("address")),4,0); 
arrCall.add(call); 

} while (c.moveToNext()); 


    } 

c = getContentResolver().query(
Uri.parse("content://sms/inbox"), 
projection, 
selection, 
selectionArgs, 
sortOrder); 

if (c.moveToFirst() && c.isNull(c.getColumnIndex("date"))==false && c.isNull(c.getColumnIndex("address"))==false) { 

do { 

CCall call = new CCall(c.getLong(c.getColumnIndex("date")),c.getString(c.getColumnIndex("address")),5,0); 

arrCall.add(call); 

} while (c.moveToNext()); 

} 

c.close(); 

} 
関連する問題