2016-09-02 12 views
0

このブロードキャストレシーバをフラグメントに登録し、自動的にotpを読み込むのを待っていますが、onRecieve()メソッドには到達しませんでした。助けてください。OTPブロードキャストレシーバがフラグメント内で動作していない

IntentFilter intentFilter = new IntentFilter("SmsMessage.intent.MAIN"); 

    mIntentReceiver = new BroadcastReceiver() { 
     @Override 
     public void onReceive(Context context, Intent intent) { 
      String msg = intent.getStringExtra("get_msg"); 
      msg = msg.replace("\n", ""); 
      String body = msg.substring(msg.lastIndexOf(":") + 1, msg.length()); 
      String pNumber = msg.substring(0, msg.lastIndexOf(":")); 
      mOtp1.setText(pNumber.trim()); 
      if (pNumber.equalsIgnoreCase(sms)) { 
       mAutoImg.setVisibility(View.VISIBLE); 
      } 
     } 
    }; 
    getContext().registerReceiver(this.mIntentReceiver, intentFilter); 
+0

'getContext()'の代わりに 'getActivity()'を使用してください。 – Piyush

答えて

0

インテントフィルタは、間違った

私は私のインテントフィルタを交換してい
IntentFilter intentFilter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED"); 
  • を使用し、それが働いているコードの残りの私のために正常に動作します。
関連する問題