0

電話番号を取得しようとしているため、使用しています

String addrWhere = Contacts.Phones.NUMBER + " = " + userNumber;
  String id = "";
  Cursor c = mContext.getContentResolver().query(
    Contacts.Phones.CONTENT_URI,
    new String[] { Contacts.Phones._ID }, addrWhere, null, null);
  try {
   if (c.getCount() > 0) {
    c.moveToFirst();
    id = c.getString(0);
    Log.i("IDS", id);
   }
  } finally {
   c.close();
  }
  return id;

誰でもこれで私の間違いを教えてもらえますか?

4

2 に答える 2

1

AndroidでContactsContract.CommonDataKinds.Phoneを照会する方法の解決策を試してください。これは、ContactsContract.PhoneLookupプロバイダーの使用法です。

Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber));
resolver.query(uri, new String[]{PhoneLookup.DISPLAY_NAME,...
于 2010-11-23T11:23:33.557 に答える
0

こんにちはすべての人...返信ありがとう!!! @ Sotapannaまあ、Sotapannaが指摘した答えを見つけました

必要な人のために作業コードを貼り付けます!

private String findID(String userNumber) {
        Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri
                .encode(userNumber));
        int id = 0;
        String[] returnVals = new String[] { PhoneLookup._ID };
        Cursor pCur = mContext.getContentResolver().query(uri, returnVals,
                PhoneLookup.NUMBER + " = \"" + userNumber + "\"", null, null);
        if (pCur.getCount() > 0) {
            pCur.moveToFirst();
            id = pCur.getColumnCount();
            if (id >= 0) {
                id = pCur.getInt(0);
            }
        }

        Log.i("Contacts", "" + id);
        return String.valueOf(id);
    }
于 2010-11-23T12:31:05.853 に答える