我试图在启动时启动我的服务,但我一直收到1245-1263/? I/ActivityManager﹕ Waited long enough for: ServiceRecord{3d8aa3b0 u9 myPackage/.myService}
异常。如何设置服务的优先级以确保它在启动时启动?
我看过这个:My service always getting Waited long enough for: ServiceRecord error in Kitkat 它告诉我,ActivityManager正在启动我的服务暂停。我已通过日志声明确认我的接收器确实正在工作。这是在任何情况下的代码有兴趣:
public class PhoneStateReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.d("OnStartUp", "Service is about to be started");
Intent myIntent = new Intent(context, myService.class);
context.startService(myIntent);
}
}
那么,我该怎么设置我的服务的优先级为“必要的”,这样的Android确保它启动?我看了这个:How to set the priority of android service?,但它涉及重新启动服务,而不是初始启动。
这里是我的清单的相关位:
<receiver android:name=".PhoneStateReceiver"
android:enabled="true"
android:label="PhoneStateReceiver"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
<service
android:name=".myService"
android:enabled="true"
android:exported="true" >
</service>
在此先感谢。
我有,我想。我将编辑问题以显示我的清单。 –