Может кто-то разъяснит, как я могу позвонить по номеру телефона, вместо того, чтобы проверять, есть ли у телефона номер телефона ContactsContract.Contacts.HAS_PHONE_NUMBER. Я попробовал ContractsContract.CommonKinds.Phone.NUMBER, заменив номер телефона, но он продолжает сбой. В приведенном ниже коде есть номер телефона.Как получить номер телефона из ContactsContract Android?
открытый класс ContactListActivity extends ListActivity { закрытый курсор;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
/*
ContactListCursorAdapter adapter = new ContactListCursorAdapter(getApplicationContext(), R.layout.contact_list_view, cursor, from, to);
setListAdapter(adapter);
*/
setContentView(R.layout.settings);
Cursor cur = getContacts();
ListView lv = (ListView)findViewById(android.R.id.list);
//String[] from = new String[] {ContactsContract.Contacts.DISPLAY_NAME,ContactsContract.Contacts.HAS_PHONE_NUMBER,ContactsContract.Contacts._ID};
// int[] to = new int[] {R.id.checkBox};
String[] fields = new String[] {ContactsContract.Data.DISPLAY_NAME, ContactsContract.Contacts.HAS_PHONE_NUMBER};
SimpleCursorAdapter adapter =
new SimpleCursorAdapter(this,
R.layout.contact_list_item,
cur,
fields,
new int[] {R.id.cbContact, R.id.tvPhoneNo});
lv.setAdapter(adapter);
}
private Cursor getContacts() {
// Run query
Uri uri = ContactsContract.Contacts.CONTENT_URI;
String[] projection =
new String[]{ ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts.HAS_PHONE_NUMBER};
String selection = null;
String[] selectionArgs = null;
String sortOrder = ContactsContract.Contacts.DISPLAY_NAME +
" COLLATE LOCALIZED ASC";
return managedQuery(uri, projection, selection, selectionArgs, sortOrder);
}
}
Спасибо очень за помощь! : D Я только что осознал свою ошибку и разместил разрешенный код выше. – user37375