开发者

Match number to contact in android app

开发者 https://www.devze.com 2023-02-11 05:22 出处:网络
Have an android app that prints with a toast pop up, and reads out a received message with tts.I use \"String origin = smsMessage[0].getOriginatingAddress();\" to get the phone number of the sender.

Have an android app that prints with a toast pop up, and reads out a received message with tts. I use "String origin = smsMessage[0].getOriginatingAddress();" to get the phone number of the sender.

I want to query the contacts list on the phone, so if the received number matches any contact开发者_Python百科s, it will print & read out the name of the sender instead. Otherwise, if the number is not recognised, it will default back to just printing & reading the OriginatingAddress number. Iv'e looked at How can I query Android contact based on a phone number? - but not quite sure howto go about it.


Uri phoneUri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(origin));
Cursor phonesCursor = context.getContentResolver().query(phoneUri, new String[] {PhoneLookup.DISPLAY_NAME}, null, null, null);

if(phonesCursor != null && phonesCursor.moveToFirst()) {
    displayName = phonesCursor.getString(0); // this is the contact name
}//end if 

Go this eventually.


That question had the answer and posted the code.

Uri phoneUri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI,
                            Uri.encode(mNumber));
Cursor phonesCursor = managedQuery(phoneUri, new String[] {PhoneLookup.DISPLAY_NAME}, null, null, null);
if(phonesCursor != null && phonesCursor.moveToFirst()) {
     String displayName = phonesCursor.getString(0); // this is the contact name
0

精彩评论

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