Как контролировать изменение состояния SIM-карты

Я хотел бы иметь возможность делать некоторые вещи при изменении состояния SIM-карты, т.е. воспроизводить звук, когда требуется PIN-код SIM-карты, но я думаю, что нет широковещательных событий, которые можно было бы перехватить широковещательным приемником для этого... регистрация для android.intent.action.PHONE_STATE только сообщает вам, когда изменяется CALL-STATE.. Альтернативой может быть запуск службы, которая регистрирует PhoneStateListener и реагирует на LISTEN_SERVICE_STATE (когда состояние OUT-OF-STATE, он может получить состояние SIM-карты из TelephonyManagerи посмотреть, является ли состояние SIM_STATE_PIN_REQUIRED). Итак, мои вопросы таковы:

1)Есть ли какое-либо широковещательное намерение, которое я могу использовать для перехвата изменения состояния SIM-карты или изменения состояния обслуживания?

2)Не является ли плохой идеей установить PhoneStateListenerв Сервисе и использовать его для доставки намерений в сам Сервис после уведомления об изменении состояния телефона, полученного PhoneStateListener?

25
задан Gianni Costanzi 11 May 2012 в 10:14
поделиться