特定の電話番号のセットに一致する連絡先のリストを取得しようとしていますが、Androidでこれを行う方法を誰かに提案してもらえますか?
たとえば、3 つの電話番号 [883338383、93939311、89898999] が検索に使用されるとします。これらの番号に一致する連絡先のリストを取得する必要があります。
特定の電話番号のセットに一致する連絡先のリストを取得しようとしていますが、Androidでこれを行う方法を誰かに提案してもらえますか?
たとえば、3 つの電話番号 [883338383、93939311、89898999] が検索に使用されるとします。これらの番号に一致する連絡先のリストを取得する必要があります。
URI とクエリを指定して、電話番号で連絡先情報を取得できます。
Uri contactUri = Uri.withAppendedPath(Contacts.Phones.CONTENT_FILTER_URL, Uri.encode(phoneNumber));
Cursor cursor = mContext.getContentResolver().query(contactUri, null, null, null, null);
上記のコードによって返されたカーソルには、探している連絡先が含まれている必要があります。これを解析して、必要な情報を取得できます。
if(cursor.moveToFirst()){
int personIDIndex = cursor.getColumnIndex(Contacts.Phones.PERSON_ID);
//etc
}
指定された番号の連絡先がない場合、クエリは null を返します。したがって、ペアリングする前に t0 がカーソルの null 値をチェックするようにしてくださいNullPointerException
。