關係

2011-07-02 57 views
0

我有一個大問題,唯一的關係,我可以短信內容提供商和聯繫人內容提供商之間得到的是手機號碼,但短信內容提供商門店數量以不同的格式相比如何這些號碼存儲在聯繫人內容提供商中。因此,我怎麼可以比較兩個表之間的數字,因爲我沒有看到他們緊緊任何其他關係或列。我的國家的電話號碼格式是+254728306203,這是短信提供商如何存儲號碼,但聯繫人提供商將其存儲爲072-830-6203任何幫助將不勝感激關係

回答

0

試試這個(對於SDK 2.0 +) 。讓數字以任何格式..只是將其作爲字符串傳遞...

在清單中添加權限android.permission.READ_CONTACTS

/** 
    * Retrieves display name for the provided contact number 
    * 
    * @param context 
    *   Context 
    * @param number 
    *   The contact number for which display name is to be retrieved 
    *   form android contacts 
    * @return Returns displayName for the contact if available. If display name 
    *   is not available then it returns the same number 
    */ 
    public static String getContactNameFromNumber(Context context, String number) { 
     // If name is not found, number will be returned 
     String contactDisplayName = number; 

     Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, 
       Uri.encode(number)); 
     Cursor cursor = context.getContentResolver().query(uri, 
       new String[] { PhoneLookup.DISPLAY_NAME }, null, null, null); 
     if (cursor.moveToFirst()) { 
      contactDisplayName = cursor.getString(cursor 
        .getColumnIndex(PhoneLookup.DISPLAY_NAME)); 
     } 
     cursor.close(); 
     Log.d("GetNumber", "Retrived DisplayName for contact number:" + number 
        + " DisplayName:" + contactDisplayName); 

     return contactDisplayName; 

    } 
+1

ü是一個天才,你會用我的代碼來表達我的代碼,因爲它的工作就像一個魅力。 – John

+0

thnx約翰接受答案。請參閱此鏈接,這樣就可以瞭解代碼.. http://developer.android.com/reference/android/provider/ContactsContract.PhoneLookup.html – Udayan

+0

有一個問題,雖然,我將如何做的我們的代碼相反,使得我對在SMS表 – John