Hi -- the semi-standard way of getting a contact name from a phone
number is to use Contacts.Phones.CONTENT_FILTER_URL and append the
phone number, as in the following sample code.  This works fine on
Android 1.6, but not on 2.0 -- is there a way to perform this function
that works in all versions of the Android API?


private String getContactNameFromNumber(String number) {
                // define the columns I want the query to return
                String[] projection = new String[] {
                                Contacts.Phones.DISPLAY_NAME,
                                Contacts.Phones.NUMBER };

                // encode the phone number and build the filter URI
                Uri contactUri = Uri.withAppendedPath
(Contacts.Phones.CONTENT_FILTER_URL, Uri.encode(number));

                // query time
                Cursor c = getContentResolver().query(contactUri, projection, 
null,
                                null, null);

                // if the query returns 1 or more results
                // return the first result
                if (c.moveToFirst()) {
                        String name = c.getString(c
                                        
.getColumnIndex(Contacts.Phones.DISPLAY_NAME));
                        return name;
                }

                // return the original number if no match was found
                return number;
        }

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to