特定の連絡先番号がWhatsAppに関連付けられているかどうかを識別できるAndroidプログラムを作成しようとしています。特定の連絡先名に WhatsApp アカウントがあるかどうかを調べることができました。その連絡先名に対応するどの連絡先が WhatsApp を持っているかを調べるにはどうすればよいですか? 現在、次のコードを使用しています。
public void identifyWhatsappContact() {
Cursor c = ctx.getContentResolver().query(
RawContacts.CONTENT_URI,
new String[] { RawContacts.CONTACT_ID, RawContacts.DISPLAY_NAME_PRIMARY },
RawContacts.ACCOUNT_TYPE + "= ? AND " + StructuredName.DISPLAY_NAME_PRIMARY + " = ?",
new String[] { "com.whatsapp", "John Doe" },
null);
ArrayList<String> myWhatsappContacts = new ArrayList<String>();
int contactNameColumn = c.getColumnIndex(RawContacts.DISPLAY_NAME_PRIMARY);
while (c.moveToNext())
{
myWhatsappContacts.add(c.getString(contactNameColumn));
Log.v("WHATSAPP", c.getString(contactNameColumn)+"");
}
}
「John Doe」が WhatsApp を持っているかどうかは識別できますが、「John Doe」のどの電話番号が WhatsApp を持っているかはわかりません (連絡先に複数の電話番号があると仮定します)。誰でも私を助けてもらえますか?ここで解決策を既に試しましたが、うまくいきません。