連絡先名を文字列入力として受け取り、その連絡先が電話帳に存在する場合は彼の電話番号を返すアプリケーションをアンドロイドで作成しようとしています...
私は周りを検索してみましたが、正確にそれを行う方法に関する明確なチュートリアルはありません
入力:連絡先名 出力:電話番号
助けてください
Cursor cursor = context.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI,null, null, null, null);
while (cursor.moveToNext()) {
String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
if(name.equalsIgnoreCase(token3)) {
try{ ContentResolver cr = context.getContentResolver();
Cursor pCur = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?", new String[] { ContactsContract.CommonDataKinds.Phone._ID}, null);
String lname = pCur.getString(pCur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
Toast.makeText(context, "number is "+lname, Toast.LENGTH_LONG).show();
}catch (Exception e) {
// TODO: handle exception
}
}
}
それは私がこれまで持っているものです。try catch ブロック内のコードは常にクラッシュします。