Вопрос

У меня есть программа, которая имеет broadcast receiver который прослушивает Phone_State, а затем отправляет определенное пользователем intent.

Ну, моя проблема в том, что система также отправляет intent (тот, который я пытаюсь заменить своей программой) .

Поэтому я пытаюсь найти способ CANCEL the systems intent.

Я обнаружил, что если у меня есть таймер, просто подождите немного, тогда я могу отправить свой после систем, но это не очень хорошо, и иногда противоречит цели моей программы.

Кроме того, я не могу установить свою программу по умолчанию, потому что это не полноценная программа дозвона.Всего одно его действие.

Кто-нибудь, пожалуйста, помогите мне найти, как прослушивать и отменять систему intent/activity....

Это было полезно?

Решение

Кто-нибудь, пожалуйста, помогите мне найти, как прослушивать и отменять систему намерение / активность

Вы не можете "отменить" действие, и точка.

Вы не можете заменить номеронабиратель.

Если система Intent был отправлен через sendOrderedBroadcast(), тогда вы можете позвонить abortBroadcast() от вашего BroadcastReceiver, и любые приемники с более низким приоритетом не получат широковещательную передачу.Однако у меня нет доказательств того, что ACTION_PHONE_STATE_CHANGED это заказная трансляция, и я искренне надеюсь, что это не так.

Что бы вы ни пытались сделать, вероятно, это должно быть достигнуто с помощью изменений в вашей собственной пользовательской прошивке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top