簡體   English   中英

從通話記錄android檢索電話號碼

[英]Retrieve phone number from call log android

我想在android應用程序的通話記錄中檢索可用的號碼。

我不想獲取所有通話記錄並在我的應用活動中進行填充。 相反,我想使用現有的Android Intent進行查看,並從列表中選擇該數字后,我希望該數字回到我的活動中。

我想我將不得不為此使用startActivityForResult 但是我很困惑的是這種方法中的代碼是什么。 我只想要數字。

任何幫助將不勝感激。

問候,香卡

String[] strFields = {
    android.provider.CallLog.Calls.NUMBER, 
    android.provider.CallLog.Calls.TYPE,
    android.provider.CallLog.Calls.CACHED_NAME,
    android.provider.CallLog.Calls.CACHED_NUMBER_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()){
    // loop through cursor 
    do{
        int ind=mCallCursor.getColumnIndex(android.provider.CallLog.Calls.NUMBER);
        int ind1=mCallCursor.getColumnIndex(android.provider.CallLog.Calls.CACHED_NAME);
        Log.v("asd", "NUmber:"+mCallCursor.getString(ind)+"  Name:"+mCallCursor.getString(ind1));
    } while (mCallCursor.moveToNext());
}

您可以獲取所需的任何信息,這只是方法

好,首先要從活動A創建意圖

Intent i=new Intent(...);
startActivityForResult(i,0)

然后在活動B上執行此操作

Intent i1=getIntent();
//here you put data
i.putExtra("key","value");

與第一個活動(活動A)相比,您可以通過以下方法獲得數據:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
    super.onActivityResult(requestCode, resultCode, data);
    String dataINeeded=data.getExtra("key");
}

而已

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM