0
Androidで次のコードを使用して繰り返しアラームを設定できました。しかし、問題は即座に通知を出し、私はそれを望んでいないということです。私はちょうど彼らがアラームを消したい時に入れて、その時にアラームを消して、選択された所定の間隔で繰り返すようにしておきたい。 RTC_WAKEUPの代わりにELAPSED_REALTIME_WAKEUPを切り替えてみましたが、そのコードは私のためには機能しませんでした。Android AlarmManagerで将来の繰り返しアラームをスケジュールするにはどうすればよいですか?
public static long getTimeForNotification(int hour, int minutes, int am_pm){
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR, hour);
calendar.set(Calendar.MINUTE, minutes);
calendar.set(Calendar.AM_PM, am_pm);
return calendar.getTimeInMillis();
}
public static PendingIntent createNotificationPendingIntent(
String name,
String number,
String messageArrayListString,
String contactID,
String photo_uri,
String actionType,
Context mContext
){
Intent alertIntent = new Intent(mContext, AlertReceiver.class);
alertIntent.putExtra("name", name);
alertIntent.putExtra("number", number);
alertIntent.putExtra("messageList", messageArrayListString);
alertIntent.putExtra("contactID", contactID.toString());
alertIntent.putExtra("photo_uri", photo_uri);
alertIntent.setAction(actionType);
PendingIntent pendingIntent = PendingIntent.getBroadcast(mContext, Integer.parseInt(contactID.toString()), alertIntent, PendingIntent.FLAG_UPDATE_CURRENT);
return pendingIntent;
}
public static void createNotifications(PendingIntent notificationPendingIntent, Context mContext, Long alarmTime, int frequencyMultiplier){
AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmTime, AlarmManager.INTERVAL_DAY * Long.valueOf(frequencyMultiplier), notificationPendingIntent);
}
ありがとうございます!!!
これは役に立ちましたか? –