单击手机号码显示联系信息

时间:2013-12-05 09:04:19

标签: android android-contacts

我有一个手机号码,我能够通过相关联系人检测到该手机号码,但是如何通过Android中的默认联系人应用程序让用户查看联系方式。

如果他点击手机号码,则应将他带到手机应用程序的联系页面。

假设电话联系人中有999999999,点击后,应该将他带到联系人页面(默认为电话)。

如何实现这一目标......

1 个答案:

答案 0 :(得分:2)

您可以尝试使用ACTION_VIEW调用意图,但您需要事先获得联系​​人ID ...

    Intent intent = new Intent(Intent.ACTION_VIEW);
    Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, String.valueOf(contactID));
    intent.setData(uri);
    context.startActivity(intent);

修改

从联系电话号码获取联系人ID:

public static int getContactIDFromNumber(String contactNumber,Context context)
{
    contactNumber = Uri.encode(contactNumber);
    int phoneContactID = new Random().nextInt();
    Cursor contactLookupCursor = context.getContentResolver().query(Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI,Uri.contactNumber),new String[] {PhoneLookup.DISPLAY_NAME, PhoneLookup._ID}, null, null, null);
        while(contactLookupCursor.moveToNext()){
            phoneContactID = contactLookupCursor.getInt(contactLookupCursor.getColumnIndexOrThrow(PhoneLookup._ID));
            }
        contactLookupCursor.close();

    return phoneContactID;
}

有关联系人操作的更多信息,请查看此answer...