1

発信呼び出しの呼び出し音を鳴らそうとしています。私は既にNEW_OUTGOING_CALLとPHONE_STATEアクションでBroadcastReceiverを試しています。しかし、私はレシーバのリンギングステージを取得していません。私は受信機があなたにステージを鳴らしているとは言わないと分かった。私はこの同じクエリを見てきました: - Android - How to detect outgoing call is answered or received? 私もこのソリューションを適用しているが、私はまだ解決策を得ていない。私はアクションNotificationListenerServiceでサービスを宣言しました。私は余分か何かをする必要があります...Android発信呼び出し鳴動段階

私は、発信呼び出しの呼び出し音を鳴らすか、他の呼び出しでこれを取り出すことができると考えています。

助けてください!

あなたが発信コール確認するには、次の権限を持っている必要があり、マニフェストファイルで
+0

<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/> 

及び放送受信機のコードを発信通話の相手側の回線が鳴っているかどうかを判断します。私は事実のためにこれを知らない。 – nasch

答えて

0

:私はに方法はありません示す応答を見てきました

public class PhoneStateChecking extends BroadcastReceiver { 
    boolean hasCallStateRinging = false; 

    @Override 
    public void onReceive(Context context, Intent intent) { 

     Log.d("Intent", intent.toString()); 
     if(intent.getAction().equals("android.intent.action.NEW_OUTGOING_CALL")) { 
      Log.e("CAll-STATUS", "out going Call"); 
     } 

     //  Checking for the call status 
     try { 
      // TELEPHONY MANAGER class object to register one listner 
      TelephonyManager tmgr = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); 
      //Create Listner 
      MyPhoneStateListener PhoneListener = new MyPhoneStateListener(); 
      // Register listener for LISTEN_CALL_STATE 
      tmgr.listen(PhoneListener, PhoneStateListener.LISTEN_CALL_STATE); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

    private class MyPhoneStateListener extends PhoneStateListener { 
     public void onCallStateChanged(int state, String incomingNumber) { 
      switch (state) { 
       case TelephonyManager.CALL_STATE_RINGING: 
        if (hasCallStateRinging) 
         return; 
        else { 
         hasCallStateRinging = true; 
         Log.e("CAll-STATUS", "CALL_STATE_RINGING"); 
        } 
        break; 
       case TelephonyManager.CALL_STATE_OFFHOOK: 
        if(!hasCallStateRinging){ 
         hasCallStateRinging = true; 
         Log.e("CAll-STATUS", "CALL_STATE_OFFHOOK"); 
        } 
        break; 
       case TelephonyManager.CALL_STATE_IDLE: 
        if (hasCallStateRinging) { 
         hasCallStateRinging = false; 
         Log.e("CAll-STATUS", "CALL_STATE_IDLE"); 
        } 
        break; 
      } 
     } 
    } 

} 
+0

このクエリの返信をありがとうが、私はすでに同じ結果を与えてこれを試してみました。 – Sayam

+0

あなたのコードを追加することができます – karthik

+0

私は、通知リスナーを使用して、システム通知を「進行中」にしています。 – Sayam

関連する問題