1

オーディオを再生するアプリがあります。問題は、アプリを操作しているときに電話がかかってきても、音声が再生され続けることです。これは、音声が人の言っていることを理解するのを難しくするため、問題になります。ユーザーが通話中に呼び出されるメソッドはありますか? そうすれば、そこでオーディオをミュートできます。アクティビティのライフ サイクルを徹底的に調査しましたが、この問題の解決に役立つ情報が見つかりません。皆さんの専門家のアドバイスに本当に感謝しています。

このコードを、他のすべてのアクティビティによって拡張される BaseActivity に入れようとしました。

PhoneStateListener phoneStateListener = new PhoneStateListener() {
        @Override
        public void onCallStateChanged(int state, String incomingNumber) {
            if (state == TelephonyManager.CALL_STATE_RINGING) {
                //Incoming call: Pause music

                TwentySeconds.stopTimer();
                Intent i = new Intent(BaseActivity.this, FinishedBeforeTimer.class);
                startActivity(i);

                Toast.makeText(BaseActivity.this, "INCOMING CALL", Toast.LENGTH_SHORT).show();

            } else if(state == TelephonyManager.CALL_STATE_IDLE) {
                //Not in call: Play music
            } else if(state == TelephonyManager.CALL_STATE_OFFHOOK) {
                //A call is dialing, active or on hold

                TwentySeconds.stopTimer();
                Intent i = new Intent(BaseActivity.this, FinishedBeforeTimer.class);
                startActivity(i);

                Toast.makeText(BaseActivity.this, "DIALING", Toast.LENGTH_SHORT).show();
            }

しかし、その後、最も奇妙なことが起こります。自分の電話に電話をかけると、電話をかけている電話に、自分の電話に電話できないと言われます。どうしようか迷っていますが、よろしくお願いします。

ありがとう、

リッチ

4

0 に答える 0