2

在我的应用程序中,有一个功能允许用户拨打特定号码并将活动显示在前面。我有以下接收器,并且是在 AndroidManifest.xml 中注册的唯一接收器。

<receiver android:name="com.example.myapp.OutgoingCallListener" android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.NEW_OUTGOING_CALL" />
    </intent-filter>
</receiver>

请注意没有BOOT_COMPLETED intentservice

现在这是我无法弄清楚的事情。当我重新启动设备时,请检查Running Apps,我的应用程序未在此处列出。但是,如果我拨打特定号码,我的应用程序就会启动并且活动会被带到前面。

我的问题是:如果应用程序不是服务,并且没有在启动时启动,它如何从 Android 接收意图?也就是说,就我而言,我的应用程序NEW_OUTGOING_CALL根本没有启动时如何收听?

4

1 回答 1

3

在清单中注册的ABroadcastReceiver始终能够响应匹配的广播。如果您的进程由于任何原因没有运行,Android 将为您启动一个进程。

于 2013-01-23T15:57:41.167 回答