Сохранить входящий номер в переменной для использования в Activity - PullRequest
0 голосов
/ 24 февраля 2012

Я смотрел на BroadcastReceiver и Activity, и я не нашел подходящего режима для использования входящего номера, который у меня есть от BroadcastReceiver в моем Activity.Это код, который я использую для перехвата входящего номера и визуализации в Toast:

    public class CustomBroadcastReceiver extends BroadcastReceiver { 
     String ophoneNumber;
     @Override
    public void onReceive(Context context, Intent incoming) {  
   Bundle bundle = incoming.getExtras();   
     ophoneNumber= bundle.getString("incoming_number");  
     Toast.makeText(context, ophoneNumber, Toast.LENGTH_LONG).show(); 
    } 
}

Манифест:

<receiver android:name=".CustomBroadcastReceiver">     
       <intent-filter>    
            <action android:name="android.intent.action.PHONE_STATE" />   
       </intent-filter>
</receiver> 

Моя проблема заключается в том, что мне нужно использоватьвходящий номер в Activity, который работает, поэтому я также читал о возможности поместить BroadcastReceiver в Activity следующим образом:

public void monitorIncomingCalls(){
          INcall = new BroadcastReceiver(){
                     public void onReceive(Context context, Intent intent) {
                     final Bundle extras = intent.getExtras();  
                 if(intent.getAction().equalsTelephonyManager.ACTION_PHONE_STATE_CHANGED))
                inphoneNumber = extras.getString(TelephonyManager.EXTRA_INCOMING_NUMBER); 
                            }
                       };
     registerReceiver(INcall, new IntentFilter(Intent.ACTION_ANSWER));
                                                     }

Но с этим у меня нетничего в переменной inphoneNumber, я думаю, потому что я не могу правильно зарегистрировать BroadcastReceiver, потому что я пропускаю разрешение.Я не нашел в сети примера, который работает для того, что я хочу, и в основном вставляю переменную в мой Activity номер, который мне звонит.

1 Ответ

0 голосов
/ 21 января 2013

Получить номер телефона входящего вызова в Android

Чтобы сохранить входящий номер, перейдите по этой ссылке.

  1. Расширение PhoneStateListener
  2. РасширениеBroadCastReceiver
  3. Показать тост.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...