2014-03-26 162 views
4

我正在製作一個電話閱讀器應用程序,其中我能夠找出來電的號碼,但現在我希望我的應用程序說出聯繫人的姓名正在撥打電話。我無法找到聯繫人的姓名。任何人都可以幫忙 感謝如何從他的電話號碼中獲取聯繫人的姓名

+0

http://www.androidhive.info/2012/01/android-文本到語音教程/這將幫助你 –

回答

4
public static String getContactName(Context context, String phoneNumber) { 
    ContentResolver cr = context.getContentResolver(); 
    Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber)); 
    Cursor cursor = cr.query(uri, new String[]{PhoneLookup.DISPLAY_NAME}, null, null, null); 
    if (cursor == null) { 
     return null; 
    } 
    String contactName = null; 
    if(cursor.moveToFirst()) { 
     contactName = cursor.getString(cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME)); 
    } 

    if(cursor != null && !cursor.isClosed()) { 
     cursor.close(); 
    } 

    return contactName; 
} 

欲瞭解更多詳情Visit this

+0

@P +1爲您的_Awesome_答案。 –

+0

@簡單計劃謝謝 – Android

2

要獲取來電號碼的名稱,使用

name = cursor.getString(cursor.getColumnIndex(CallLog.Calls.NAME)); 
+0

我將如何比較我的號碼 –

相關問題