我正在为Android开发应用程序,并希望阅读客户端设备中配置的WhatsApp电话号码。
尝试以下代码:
AccountManager am = AccountManager.get(this);
Account[] accounts = am.getAccounts();
for (Account ac : accounts) {
String acname = ac.name;
String actype = ac.type;
// Take your time to look at all available accounts
System.out.println("Accounts : " + acname + ", " + actype);
}
if(actype.equals("com.whatsapp")){
String phoneNumber = ac.name;
}
我还设置了此权限:<uses-permission android:name="android.permission.GET_ACCOUNTS" />
但是phoneNumber只返回&#34; Whatsapp&#34;
我需要用户的whatsapp电话号码作为我数据库中的记录。我怎样才能得到这个电话号码?
答案 0 :(得分:3)
请按照以下步骤操作:
rawcontact
ID。 ContactsContract.Data
内容mimetype = "vnd.android.cursor.item/vnd.com.whatsapp.profile"
查询rawcontact
表。DATA3
列是WhatsApp的数量。答案 1 :(得分:1)
WhatsApp已经更新了他们的流程,他们不再使用电话号码创建帐户作为帐户名称,这是此代码所依赖的技巧。
我认为现在没有办法从WhatsApp应用程序外部获取WhatsApp电话号码。