Как скрыть непрочитанные смс уведомления?
Я пишу приложение, которое обрабатывает SMS-сообщения и, как я планирую, должно заменить стандартное / стандартное приложение.
Я перехватываю android.provider.Telephony.SMS_RECEIVED
трансляция с помощью входящих SMS и публикации моего собственного уведомления, а затем звонит abortBroadcast()
Таким образом, в конце концов, нет никаких уведомлений о входящих новых сообщениях, что приводит к стандартному / стоковому приложению.
Но проблема в том, что когда пользователь не читает достаточно долго (что-то, например, несколько минут), входящее SMS-приложение / приложение по умолчанию вызывает другую трансляцию - я подозреваю, что просто проверяю, что есть непрочитанные смс. Таким образом, пользователь видит 2 уведомления: одно из стандартного / стандартного приложения для обмена сообщениями, а другое - от шахт, которые запутались.
Я не могу найти, какая трансляция сработала, когда есть непрочитанные смс?
Есть идеи, намеки?
1 ответ
Вы можете установить приоритет вашего получателя таким образом, чтобы вы знали, что он имеет высший приоритет и выполнит onReceive()
метод:
<receiver android:name=".SmsReceiver" android:enabled="true"
android:exported="true" android:priority="999">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>