Как я могу получить свой номер whatsapp?
Я разрабатываю приложение для 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" />
но номер телефона возвращает только "Whatsapp"
Мне нужен номер телефона пользователя whatsapp в качестве записи в моей базе данных. Как я могу получить этот номер телефона?
Ответы
Ответ 1
Выполните следующие действия:
- Вам нужен идентификатор
rawcontact
WhatsApp этого контакта.
- Запрос
ContactsContract.Data
таблицы с mimetype = "vnd.android.cursor.item/vnd.com.whatsapp.profile"
с этим rawcontact
id.
- Столбец
DATA3
- это число WhatsApp.
Ответ 2
WhatsApp обновили свой процесс, и они больше не создают учетную запись с использованием номера телефона в качестве имени учетной записи, что является трюком, на который этот код полагался.
Я не верю, что теперь можно найти номер телефона WhatsApp вне приложения WhatsApp.