我已經創建了一個Android應用程序,該應用程序應該在啓動後啓動服務。 它在Nexus 5手機上工作得很好,但我無法使它在華爲平板電腦(Mediapad X2)上工作。我正在使用Android 5.0/API 21.BOOT_COMPLETED沒有收到
根據指南,清單具有適當的權限/意圖。
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<receiver
android:name=".BootBroadcast"
android:enabled="true"
android:exported="true"
android:label="BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON"/>
</intent-filter>
</receiver>
我SO搜索類似問題(BOOT_COMPLETED not working Android),並添加了QUICKBOOT_POWERON意圖,還有WAKE_LOCK權限,但一切都沒有改變。
廣播接收器剛剛開始服務
public class BootBroadcast extends BroadcastReceiver {
private static final String TAG = "GrandUnion-Boot";
@Override
public void onReceive(Context context, Intent intent) {
Log.e(TAG, "Boot_Completed RECEIVED");
try{
context.startService(new Intent(context,MyService.class));
Log.i(TAG, "Boot Completed - start service");
}catch(Exception e){
Log.e(TAG,e.toString());
}
}
}
可能重複與http://stackoverflow.com/questions/24882861/android-intent-action-boot-completed-intent-is-not-received-at-restart-or-reb – KostasC
我不認爲它因爲OP說他還加了Quickboot ..... – Opiatefuchs
你有沒有嘗試在'intent-filter'中加入' '? –
Knossos