通話履歴から最近不在着信の番号を取得しようとしています。バックグラウンドで実行したい以下のコードを使用しました。呼び出しが不在着信ログに移動すると、この関数が機能するはずです。それを可能にする方法 plz ヘルプ
public void SendSMStoMissedCall()
{
String[] strFields = {android.provider.CallLog.Calls.CACHED_NAME,
android.provider.CallLog.Calls.NUMBER,android.provider.CallLog.Calls.DATE,
android.provider.CallLog.Calls.TYPE};
String strOrder = android.provider.CallLog.Calls.DATE + " DESC";
Cursor mCallCursor = getContentResolver().query(android.provider.CallLog.Calls.CONTENT_URI,strFields, null, null, strOrder);
if (mCallCursor.moveToFirst())
{
do
{
boolean missed = mCallCursor.getInt(mCallCursor.getColumnIndex(CallLog.Calls.TYPE)) == CallLog.Calls.MISSED_TYPE;
if (missed)
{
String name = mCallCursor.getString(mCallCursor.getColumnIndex(CallLog.Calls.CACHED_NAME));
number = mCallCursor.getString(mCallCursor.getColumnIndex(CallLog.Calls.NUMBER));
String time = mCallCursor.getString(mCallCursor.getColumnIndex(android.provider.CallLog.Calls.DATE));
Log.d("PhoneLog", "You have a missed call from " + name + " on " + number + " at " + time);
String ContactName = objUtility.getContactNameFromNumber(number);
SendMessage(number);
getCurrentLocation();
}
}
while (mCallCursor.moveToNext());
}
}