我正在编写一个可以获取联系人和所有详细信息的应用,例如每个联系人中的任何数字。它工作正常,但我有一个问题。当你打电话时,如下图所示:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE); startActivityForResult(intent,1);
首先,我看到(打开)屏幕,如下所示:
当我选择"联系人"显示第二个屏幕:
我有什么方法可以调用方法,第二个屏幕显示直接显示的联系人和详细信息,我不用看第一个屏幕并选择"联系人"。 感谢。
答案 0 :(得分:0)
毕竟我发现了这种方式: 而不是:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
我写了这些文字:
Intent intent = new Intent(Intent.ACTION_PICK,Uri.parse(“content:// contacts / people”)); intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);
答案 1 :(得分:0)
我也有同样的问题。最后,我使用下面的代码摆脱了中间选择器屏幕,
onActivityResult
在if (requestCode == SELECT_PHONE_NUMBER && resultCode == RESULT_OK) {
// Get the URI and query the content provider for the phone number
Uri contactUri = data.getData();
String[] projection = new String[]{ContactsContract.CommonDataKinds.Phone.NUMBER};
Cursor cursor = getContext().getContentResolver().query(contactUri, projection,
null, null, null);
// If the cursor returned is valid, get the phone number
if (cursor != null && cursor.moveToFirst()) {
int numberIndex = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
String number = cursor.getString(numberIndex);
// Do something with the phone number
...
}
cursor.close();
}
获取电话号码
workspace.PendEdit(new[] {filePath}, RecursionType.Full, null, LockLevel.CheckOut);