Pracuję nad aplikacją, w której rysuję niestandardowy ekran blokady (aktywność) na domyślnej blokadzie systemu.

Wszystko działa idealnie, z wyjątkiem jednej rzeczy, używam odbiornika i za każdym razem, gdy jest połączenie przychodzące, ten odbiornik zostaje wywołany i od wewnątrz tego odbiornika zamykam aktywność.

Uwaga: dzieje się tak tylko w przypadku urządzenia OnePlus, na każdym innym urządzeniu działa idealnie.

private class CallStateListener extends PhoneStateListener {
    @Override
    public void onCallStateChanged(int state, String incomingNumber) {
        OverlayActivity overlayActivity = new OverlayActivity();
        switch (state) {
            case TelephonyManager.CALL_STATE_RINGING:
                // System.out.println("RINGING");
                overlayActivity.finish();
                // System.out.println("Activity has been closed!!");
                break;
        }
    }
}

Zarówno wiersze przed, jak i po kodzie, w którym zamykam aktywność, działają całkowicie poprawnie, ale aktywność nie jest zamykana.

0
Kunal 23 listopad 2018, 09:38

1 odpowiedź

Najlepsza odpowiedź

A jeśli tworzysz Obiekt Aktywności, w ogóle nie działa, potrzebujesz i Rzeczywista Aktywność lub Kontekst Aktywności, aby go zamknąć.

1
Chetan Joshi 23 listopad 2018, 13:22