Dies ist, was ich in einer ähnlichen Situation versucht:
Machen Sie Ihre Rundfunkempfänger den Neustart des Systems erkennen. Sobald Ihr System neu gestartet wird, erkennt Ihr Broadcast-Empfänger es und Sie können Ihre Aufgabe ausführen. Wie in meinem Projekt habe ich eine Abfrage auf meine SQLite-Datenbank ausgeführt und alle nicht ausgeführten Alarme abgerufen und dann entsprechend meinen Anforderungen ausgeführt und die Datenbank mit der gleichen aktualisiert.
Sie können etwas ähnliches versuchen.
-Code Alarme abrufen:
Fügen Sie Ihre Broadcast-Receiver mit den folgenden Attributen:
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
Diese BroadcastReceiver wird Ihr Android-Gerät den Neustart erkennen und die OnReceive() -Methode des BroadcastReceiver auszuführen. Rufen Sie in der Methode onReceive() alle Alarme nach Ihren Kriterien ab und bearbeiten Sie sie anschließend weiter.
weiter zu erfahren, wie Aufzeichnungen oder Tupeln aus der SQLite-Datenbank abzurufen gehen über den folgenden Link:
http://developer.android.com/training/basics/data-storage/databases.html#ReadDbRow
Sie benötigen einen 'BacgroundService' zu schaffen, auf das zu tun und„Autoload“Ihr Service Neustart. – Aspicas
@aspicas Können Sie es bitte weiter erklären? Du willst, dass ich einen Dienst starte, der einen Alarm setzt, habe ich recht? –
Ja, die erste Option, die Sie benötigen, um einen 'bacgroundService' mit dem Empfänger auf dem Manifest zu erstellen, der beim Einschalten Ihres Geräts geöffnet wird, später auf backgrounService müssen Sie Ihren Code mit ÀlarmManager's setzen – Aspicas