Android: как определить личный номер программно - PullRequest
11 голосов
/ 10 января 2011

Я использую BroadcastReceiver для перехвата входящего вызова на телефоне Android, как показано ниже

tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
Bundle bundle = intent.getExtras();
String number = bundle.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);

В случае с «закрытым номером», который я тестировал на двух устройствах, в HTC Wildfire это число равно -1, а в Galaxy S - 2. Я проверил android.telephony.PhoneNumberUtils, но это мне не помогло.

Существует ли функция или универсальный способ обнаружения личного номера на телефоне Android?

1 Ответ

12 голосов
/ 18 августа 2011

Вы в значительной степени ответили на свой вопрос.Частные номера отправляются на телефон как -1 или -2.В моем приложении я проверяю целочисленное значение, которое меньше 0, и если оно есть, я рассматриваю его как частное число.Это звучит как то, что вы хотите сделать.

Я надеюсь, что мои мысли полезны.

...