我想知道启动后启动Android服务的最快方法是什么。
我创建了一个调用startService的broadcastreveicer,并在android清单中注册了以下意图的接收器:
<receiver
android:name="com.example.Monitor.SensorRestarterBroadcastReceiver"
android:enabled="true"
android:exported="true"
android:label="RestartServiceWhenStopped">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" android:priority="999"/>
<action android:name="android.intent.action.QUICKBOOT_POWERON" android:priority="999"/>
<action android:name="android.intent.action.USER_PRESENT" android:priority="999"/>
</intent-filter>
</receiver>
我看到,即使使用这种高优先级的意图过滤器,我的服务也需要更长时间来接收这些Android通知,而不是其他“不太有用”的服务,例如whatsapp消息通知服务。我注意到在我的应用收到上述任何意图通知之前,whatsapp能够接收消息并在状态栏中显示它。
我正在使用Nexus 4与Android 5.1.1进行测试。