Не можете принять входящий SIP-вызов, используя собственный SIP-стек Android? - PullRequest
0 голосов
/ 07 ноября 2019

Согласно документации разработчика Android, для приема вызова система Android обрабатывает входящий Sip CALL и транслирует намерение входящего вызова при получении вызова. Я вложил класс входящий вызов в основной класс и объявил получатель inisde AndroidManifest.xml, как показано ниже.

<receiver android:name=".MediaPresentationActivity$IncomingReceiver android:label="Call Receiver"/>

немного ниже ошибка

ошибка: IncomingReceiver не является абстрактным и не переопределяет абстрактный метод onReceive (Context, Intent) в BroadcastReceiver

тело основного класса, как показано ниже

public class MediaPresentationActivity extends Activity implements View.OnClickListener, View.OnTouchListener{


....................

public class IncomingReceiver extends BroadcastReceiver {
    /**
     * Name: onReceive
     * Description: Process the incoming calls and answers it.
     */
    @Override
    public void onReceive(Context context, Intent intent) {
        SipAudioCall incomingCall = null;
        try {

            SipAudioCall.Listener listener = new SipAudioCall.Listener() {
                @Override
                public void onRinging(SipAudioCall call, SipProfile caller) {
                    Log.e("call", "call incoming!");
                }
            };

            VoipActivity va = (VoipActivity) context;
            incomingCall = va.manager.takeAudioCall(intent, listener);


            va.incomingCall(incomingCall);

        } catch (Exception e) {
            e.printStackTrace();
            if (incomingCall != null) {
                incomingCall.close();
            }
        }
    }



}
...