Update sample prebults for 2017-02 release (nyc-mr1-dev)

developers/samples/android commit: 6f3586bc08b96d14d8f1315f4839ac59aa39798c

Change-Id: I08c9af2d58f1b3314eba807048dc05175a58e164
This commit is contained in:
Trevor Johns
2017-02-09 00:45:30 -08:00
parent f22b170c9c
commit 8a66f8cbc0
299 changed files with 4245 additions and 2532 deletions

View File

@@ -129,7 +129,7 @@ public class SchedulerFragment extends Fragment {
@Override
public void onReceive(Context context, Intent intent) {
Alarm alarm = intent.getParcelableExtra(AlarmIntentService.ALARM_KEY);
Alarm alarm = AlarmUtil.readAlarm(intent.getExtras());
mAlarmAdapter.deleteAlarm(alarm);
}
}

View File

@@ -16,66 +16,44 @@
package com.example.android.directboot.alarms;
import android.os.Parcel;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import org.json.JSONException;
import org.json.JSONObject;
import android.support.annotation.NonNull;
import java.util.Calendar;
import java.util.Objects;
/**
* Class represents a single alarm.
*/
public class Alarm implements Comparable<Alarm>, Parcelable {
public class Alarm implements Comparable<Alarm> {
public int id;
public int month;
public int date;
/** Integer as a 24-hour format */
public int hour;
public int minute;
public Alarm() {}
protected Alarm(Parcel in) {
id = in.readInt();
month = in.readInt();
date = in.readInt();
hour = in.readInt();
minute = in.readInt();
public Alarm(int id, int month, int date, int hour, int minute) {
this.id = id;
this.month = month;
this.date = date;
this.hour = hour;
this.minute = minute;
}
public static final Creator<Alarm> CREATOR = new Creator<Alarm>() {
@Override
public Alarm createFromParcel(Parcel in) {
return new Alarm(in);
}
@Override
public Alarm[] newArray(int size) {
return new Alarm[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeInt(id);
parcel.writeInt(month);
parcel.writeInt(date);
parcel.writeInt(hour);
parcel.writeInt(minute);
public Alarm() {
}
/**
* Serialize the instance as a JSON String.
*
* @return serialized JSON String.
*/
public String toJson() {

View File

@@ -34,7 +34,17 @@ public class AlarmIntentService extends IntentService {
public static final String ALARM_WENT_OFF_ACTION = AlarmIntentService.class.getName()
+ ".ALARM_WENT_OFF";
public static final String ALARM_KEY = "alarm_instance";
public static final String KEY_ALARM_ID = "alarm_id";
public static final String KEY_ALARM_MONTH = "alarm_month";
public static final String KEY_ALARM_DATE = "alarm_date";
public static final String KEY_ALARM_HOUR = "alarm_hour";
public static final String KEY_ALARM_MINUTE = "alarm_minute";
public AlarmIntentService() {
super(AlarmIntentService.class.getName());
@@ -43,7 +53,7 @@ public class AlarmIntentService extends IntentService {
@Override
protected void onHandleIntent(Intent intent) {
Context context = getApplicationContext();
Alarm alarm = intent.getParcelableExtra(ALARM_KEY);
Alarm alarm = AlarmUtil.readAlarm(intent.getExtras());
NotificationManager notificationManager = context
.getSystemService(NotificationManager.class);
@@ -59,7 +69,7 @@ public class AlarmIntentService extends IntentService {
AlarmStorage alarmStorage = new AlarmStorage(context);
alarmStorage.deleteAlarm(alarm);
Intent wentOffIntent = new Intent(ALARM_WENT_OFF_ACTION);
wentOffIntent.putExtra(ALARM_KEY, alarm);
wentOffIntent.putExtras(AlarmUtil.writeAlarm(alarm));
LocalBroadcastManager.getInstance(context).sendBroadcast(wentOffIntent);
}
}

View File

@@ -20,6 +20,7 @@ import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import java.util.Calendar;
@@ -45,7 +46,9 @@ public class AlarmUtil {
*/
public void scheduleAlarm(Alarm alarm) {
Intent intent = new Intent(mContext, AlarmIntentService.class);
intent.putExtra(AlarmIntentService.ALARM_KEY, alarm);
Bundle extras = writeAlarm(alarm);
intent.putExtras(extras);
PendingIntent pendingIntent = PendingIntent
.getService(mContext, alarm.id, intent, PendingIntent.FLAG_UPDATE_CURRENT);
Calendar alarmTime = Calendar.getInstance();
@@ -71,7 +74,6 @@ public class AlarmUtil {
*/
public void cancelAlarm(Alarm alarm) {
Intent intent = new Intent(mContext, AlarmIntentService.class);
intent.putExtra(AlarmIntentService.ALARM_KEY, alarm);
PendingIntent pendingIntent = PendingIntent
.getService(mContext, alarm.id, intent, PendingIntent.FLAG_UPDATE_CURRENT);
mAlarmManager.cancel(pendingIntent);
@@ -94,4 +96,25 @@ public class AlarmUtil {
}
return alarmTime;
}
public static Alarm readAlarm(Bundle extras) {
int id = extras.getInt(AlarmIntentService.KEY_ALARM_ID);
int month = extras.getInt(AlarmIntentService.KEY_ALARM_MONTH);
int date = extras.getInt(AlarmIntentService.KEY_ALARM_DATE);
int hour = extras.getInt(AlarmIntentService.KEY_ALARM_HOUR);
int minute = extras.getInt(AlarmIntentService.KEY_ALARM_MINUTE);
return new Alarm(id, month, date, hour, minute);
}
public static Bundle writeAlarm(Alarm alarm){
Bundle extras = new Bundle();
extras.putInt(AlarmIntentService.KEY_ALARM_ID, alarm.id);
extras.putInt(AlarmIntentService.KEY_ALARM_MONTH, alarm.month);
extras.putInt(AlarmIntentService.KEY_ALARM_DATE, alarm.date);
extras.putInt(AlarmIntentService.KEY_ALARM_HOUR, alarm.hour);
extras.putInt(AlarmIntentService.KEY_ALARM_MINUTE, alarm.minute);
return extras;
}
}