安装后不会立即调用Android广播接收器

时间:2012-02-01 08:05:41

标签: android sms broadcastreceiver

我有一个Android应用程序,可以收听短信。这是清单:

<receiver android:name=".IncomingSMSBroadcastReceiver" android:enabled="true">
        <intent-filter android:priority="100">
            <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
        </intent-filter>
</receiver>

如果安装并打开了应用程序,广播接收器工作正常。但我希望能够在安装后立即调用接收器,以防用户从Android Market网站远程安装并且不在手机前。当我使用adb安装APK时

 ./adb install myapp.apk

我可以看到该应用已安装。但是,当我发送短信时,我的应用程序没有响应。在我打开应用程序一次之后,此时似乎所有初始化都发生了,现在应用程序响应SMS消息就好了。

一种可能性是ADB安装与市场安装不同。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这是不可能的。 AFAIK直到接收器没有注册然后它无法检测到任何动作。你的代码没有任何问题。但是你的接收器在它启动时会工作。为此我们必须运行我们的应用程序至少一次。所以Manife注册了接收器