3
我的應用程序即將準備就緒,現在有一件事情我知道更新後,用戶設置的所有警報都會熄滅。爲此,我讀了很多,發現我必須在清單中使用用戶包進行替換,以檢查更新並以廣播形式接收。這是我在清單中添加的內容,並且在我更改gradle中的版本碼時發送廣播時進行了測試。確保應用程序更新後的警報工作
<receiver
android:name=".AppUpdateHandler"
android:exported="false">
<intent-filter android:priority="900">
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
<data android:scheme="package" />
</intent-filter>
<intent-filter android:priority="1000">
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
現在接下來是我用來設置報警代碼,
public void setalarm() {
Intent intent = new Intent(Settings.this, AlarmReceiver.class);
final PendingIntent pendingIntent = PendingIntent.getBroadcast(this, AlarmReceiver.receivercode, intent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
userdefinedinterval = sharedPreferences.getString("date", "");
alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(), Integer.parseInt(userdefinedinterval) * 60 * 60 * 24 * 1000, pendingIntent);
}
我閱讀和認識了約未決意圖的ID,這是我我的情況是AlarmReceiver.receivercode。但現在需要幫助,我應該怎麼做才能讓更新後的應用程序警報處於活動狀態。我是否需要通過捕獲更新狀態的廣播來調用所有警報,或者其他可能的情況。還有一件事,我已經在清單中添加了引導,以便在重新引導後警報繼續工作。在這裏,我通過sharedpreference檢查與報警關聯的每個選項的狀態,然後分別觸發報警。我是否需要以相同的方式處理更新?