【发布时间】:2013-06-30 18:10:30
【问题描述】:
我有一个应用程序,允许用户在收到 SMS 消息时转发它们。过去,我将intent-filter 中的android:priority 用于android.provider.Telephony.SMS_RECEIVED 设置为略高于Android 的默认消息传递应用程序。我这样做是为了让用户可以转发消息,而无需在消息应用程序中清除它们。然而,几个月后,Go SMS Pro 发布了他们的应用程序更新,android:priority 值非常高,因此安装该应用程序的用户开始遇到问题。我更新了我的应用程序,使我的优先级略高于 Go SMS Pro,一切顺利。现在 Go SMS Pro 又做了一次,他们的android:priority 已经达到了你可以分配的最大值。 2147483647 在他们的一个广播接收器上,2147483640 在另一个广播接收器上(是的,Go SMS Pro 现在有两个广播接收器)。
为了解决这个问题,我尝试像他们一样将我的优先级更改为最高,但不知何故,尽管我们的优先级相同,但他们的应用程序一直在赢得 SMS 争夺战。我在某处读到,Android 在必须在具有相同优先级的两个应用程序之间做出决定时,它会选择最早安装的应用程序。我尝试在我的应用之后安装 Go SMS Pro,但仍然没有。
解决此问题的正确方法是什么?他们在他们的应用程序中做了什么让他们在其他人之前收到 SMS 广播,即使使用相同的 android:priority 值?
【问题讨论】:
-
我们也对 GoSMS 有点恼火,我们通常要求我们的 (mobitexter.net) 用户执行以下操作: 1. 在您的 Android 手机上启动 GoSMS 应用程序。 2. 在“菜单 -> 设置 -> 接收设置”下 - 取消选中“禁用其他消息通知”框。
标签: android sms broadcastreceiver