Обратные вызовы PhoneStateListener не вызываются несмотря на локальное объявление - PullRequest
0 голосов
/ 01 октября 2018

У меня проблема с получением обратных вызовов от PhoneStateListener во фрагменте.

Вот настройка:

class StatusBarFragment {

    private lateinit var telephonyManager: TelephonyManager

    val phoneStateListener: PhoneStateListener = object : PhoneStateListener() {
        override fun onServiceStateChanged(serviceState: ServiceState) {
          Timber.d("Current cell state : ${serviceState.state}")
        }

        override fun onSignalStrengthsChanged(signalStrength: SignalStrength) {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                Timber.d("Current cell signal: ${signalStrength.level}")
            } else {
                Timber.d("Current cell signal:${signalStrength.gsmSignalStrength}")
            }
        }
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        telephonyManager = context.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
        telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_SERVICE_STATE or PhoneStateListener.LISTEN_SIGNAL_STRENGTHS)
    }
}

Журналы не вызываются (даже один раз).В чем может быть проблема?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...