开发者

Relationship between sms content provider and contacts

I have a big problem, the only relationship i can get between sms content provider and the contacts content provider is the phone numbers BUT the sms content provider stores numbers in a different format as compared to how the numbers are stored in the contacts content provider. hence how can I compare the numbers between the two tables since I dont see any other relationship or column that binds them. I my country the phone number format is +254728306203, this is how the sms provider store the number but the cont开发者_开发技巧acts provider stores it as 072-830-6203 Any help will be greatly appreciated


Try this (For SDK 2.0+). Let the number be in any format.. just pass it as a string...

Add permission android.permission.READ_CONTACTS in manifest.

/**
     * 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;

    }
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜