Мне нужно сделать приложение, которое показывает контактный номер SIM-карты, которая используется в ячейке. Для этого мне нужно использовать класс TelephonyManager. Могу ли я получить информацию о его использовании?
Как получить мобильный номер текущей сим-карты в реальном устройстве?
Ответ 1
Вы можете использовать TelephonyManager
, чтобы сделать это:
TelephonyManager tm = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
String number = tm.getLine1Number();
Документация для getLine1Number()
говорит, что этот метод вернет null
, если номер "недоступен", но он не говорит, когда номер может быть недоступен.
Вам нужно предоставить ваше приложение разрешение сделать этот запрос, добавив в свой манифест следующее:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
(Вы не должны использовать TelephonyManager.getDefault()
, чтобы получить TelephonyManager
как который является закрытым недокументированным вызовом API и может измениться в будущем.)
Ответ 2
Привет На самом деле это мой вопрос, но я ничего не получил. Теперь у меня есть номер мобильного телефона и его адрес электронной почты с определенного Android-устройства Android (Android Mobile). Через 90% пользователей, использующих приложение App на Android Mobile.And теперь я получаю Mobile no и идентификатор электронной почты. Через это приложение API. Очень просто использовать этот код ниже.
AccountManager am = AccountManager.get(this);
Account[] accounts = am.getAccounts();
for (Account ac : accounts)
{
acname = ac.name;
if (acname.startsWith("91")) {
mobile_no = acname;
}else if(acname.endsWith("@gmail.com")||acname.endsWith("@yahoo.com")||acname.endsWith("@hotmail.com")){
email = acname;
}
// Take your time to look at all available accounts
Log.i("Accounts : ", "Accounts : " + acname);
}
и импортируйте этот API
import android.accounts.Account;
import android.accounts.AccountManager;
Ответ 3
Мне нужно сделать приложение, которое показывает контактный номер SIM-карты, которая используется в ячейке. Для этого мне нужно использовать класс Telephony Manager. Могу ли я получить информацию о его использовании?
Да, Вы должны использовать Telephony Manager, если вы вообще не нашли контакт. пользователя; Вы можете получить Sim Serial Number of Sim Card и Imei Количество Android-устройств, используя тот же класс Telephony Manager...
Добавить разрешение:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
Импорт
import android.telephony.TelephonyManager;
Используйте приведенный ниже код:
TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
// get IMEI
imei = tm.getDeviceId();
// get SimSerialNumber
simSerialNumber = tm.getSimSerialNumber();
Ответ 4
Ну, все могут быть временными хаками, но нет способа получить мобильный номер пользователя. Это противоречит этической политике.
Например, один из приведенных выше ответов предлагает получить все счета и извлечь их оттуда. И это уже не работает! Все это только хаки.
Только оператор получает номер мобильного телефона. Если у вас есть связь с мобильными операторами, такими как Aitel, Vodafone и т.д., Вы можете получить номер мобильного телефона пользователя в заголовке запроса с мобильного телефона при подключении через интернет через интернет.
Не уверен, что какой-либо производитель связывает, чтобы получить определенные разрешения, может помочь - не исследовать эту область, но ничто не документировано по крайней мере.
Ответ 5
Иногда вы можете вернуть номер телефона с запросом USSD к вашему оператору. Например, я могу получить свой номер телефона, набрав * 116 # Вероятно, это можно сделать в приложении, я думаю, если бы кто-то мог уловить ответ USSD. Если это не метод, который я бы рекомендовал использовать в приложении, которое должно быть распространено, код может даже отличаться между операторами.
Ответ 6
Как многие говорили:
String phoneNumber = TelephonyManager.getDefault().getLine1Number();
Доступность зависит строго от носителя и способа кодирования номера на SIM-карте. Если он жестко запрограммирован компанией, которая делает SIM-карты или сам мобильный оператор. Это возвращает то же, что и в настройках → о телефоне.