/** * アクティビティ呼び出し用の {@link AlarmIntent} を生成する。 * * @param packageContext {@link Context} * @return {@link AlarmIntent} * @see AlarmNotificationActivity */ public static AlarmIntent forActivity(@NonNull Context packageContext) { AlarmIntent intent = new AlarmIntent(packageContext, AlarmNotificationActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); return intent; }
/** * 必要な情報を取り出して新たな {@link AlarmIntent} を生成する。 * * @param data 元となる {@link Intent} * @return {@link AlarmIntent} */ public static AlarmIntent of(@NonNull Intent data) { AlarmIntent intent = new AlarmIntent(); intent.setRingtoneUri(data.getStringExtra(RINGTONE_URI)); intent.setAlarmKey(data.getStringExtra(ALARM_KEY)); return intent; }
/** * @param packageContext {@link Context} * @param ringtoneUri アラーム音の URI * @return {@link AlarmIntent} * @see AlarmService */ public static AlarmIntent forService( @NonNull Context packageContext, @NonNull String ringtoneUri) { AlarmIntent intent = new AlarmIntent(packageContext, AlarmService.class); intent.setRingtoneUri(ringtoneUri); return intent; }