我有一个手机号码,我能够通过相关联系人检测到该手机号码,但是如何通过Android中的默认联系人应用程序让用户查看联系方式。
即
如果他点击手机号码,则应将他带到手机应用程序的联系页面。
假设电话联系人中有999999999,点击后,应该将他带到联系人页面(默认为电话)。
如何实现这一目标......
答案 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...