0
我試圖從通話記錄中找出最近未接電話號碼。我使用了下面的代碼,我想讓它在後臺運行,現在我在mainActivity類中編寫了這個方法,當一個調用移動到未命中日誌時,此函數應該可以工作。如何使它可能plz幫助訪問android中撥打電話時的來電號碼
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());
}
}
所以不起作用?你希望哪部分代碼可以工作,但不是? – Calvin 2013-03-22 12:44:59
@Calvin我想在後臺做這項工作,當一個新的未接電話來到我想獲得號碼 – 2013-03-22 15:10:24
我的意思是哪個部分不工作?你得到一個空遊標?或者光標是空的?或遊標返回錯誤的值?如果我不知道什麼是錯的,我不能幫助。 – Calvin 2013-03-22 15:22:18