Switch settings to use TimeDetector
Switch settings to use TimeDetector when setting the system clock rather
than using AlarmManager directly.
Bug: 140712361
Test: treehugger
Test: manual
Test: make -j30 RunSettingsRoboTests ROBOTEST_FILTER=TimePreferenceControllerTest
Test: make -j30 RunSettingsRoboTests ROBOTEST_FILTER=DatePreferenceControllerTest
Change-Id: I671bf0e7e7364f64f1397d524c6277591eb4e22e
Merged-In: I671bf0e7e7364f64f1397d524c6277591eb4e22e
(cherry picked from commit 9861696306
)
This commit is contained in:
@@ -17,8 +17,9 @@
|
|||||||
package com.android.settings.datetime;
|
package com.android.settings.datetime;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.AlarmManager;
|
|
||||||
import android.app.DatePickerDialog;
|
import android.app.DatePickerDialog;
|
||||||
|
import android.app.timedetector.ManualTimeSuggestion;
|
||||||
|
import android.app.timedetector.TimeDetector;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.text.format.DateFormat;
|
import android.text.format.DateFormat;
|
||||||
@@ -119,7 +120,10 @@ public class DatePreferenceController extends AbstractPreferenceController
|
|||||||
long when = Math.max(c.getTimeInMillis(), DatePreferenceHost.MIN_DATE);
|
long when = Math.max(c.getTimeInMillis(), DatePreferenceHost.MIN_DATE);
|
||||||
|
|
||||||
if (when / 1000 < Integer.MAX_VALUE) {
|
if (when / 1000 < Integer.MAX_VALUE) {
|
||||||
((AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE)).setTime(when);
|
TimeDetector timeDetector = mContext.getSystemService(TimeDetector.class);
|
||||||
|
ManualTimeSuggestion manualTimeSuggestion =
|
||||||
|
TimeDetector.createManualTimeSuggestion(when, "Settings: Set date");
|
||||||
|
timeDetector.suggestManualTime(manualTimeSuggestion);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -17,8 +17,9 @@
|
|||||||
package com.android.settings.datetime;
|
package com.android.settings.datetime;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.AlarmManager;
|
|
||||||
import android.app.TimePickerDialog;
|
import android.app.TimePickerDialog;
|
||||||
|
import android.app.timedetector.ManualTimeSuggestion;
|
||||||
|
import android.app.timedetector.TimeDetector;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.text.format.DateFormat;
|
import android.text.format.DateFormat;
|
||||||
@@ -117,7 +118,10 @@ public class TimePreferenceController extends AbstractPreferenceController
|
|||||||
long when = Math.max(c.getTimeInMillis(), TimePreferenceHost.MIN_DATE);
|
long when = Math.max(c.getTimeInMillis(), TimePreferenceHost.MIN_DATE);
|
||||||
|
|
||||||
if (when / 1000 < Integer.MAX_VALUE) {
|
if (when / 1000 < Integer.MAX_VALUE) {
|
||||||
((AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE)).setTime(when);
|
TimeDetector timeDetector = mContext.getSystemService(TimeDetector.class);
|
||||||
|
ManualTimeSuggestion manualTimeSuggestion =
|
||||||
|
TimeDetector.createManualTimeSuggestion(when, "Settings: Set time");
|
||||||
|
timeDetector.suggestManualTime(manualTimeSuggestion);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -21,7 +21,7 @@ import static com.google.common.truth.Truth.assertThat;
|
|||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.app.AlarmManager;
|
import android.app.timedetector.TimeDetector;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import com.android.settingslib.RestrictedPreference;
|
import com.android.settingslib.RestrictedPreference;
|
||||||
@@ -40,7 +40,7 @@ public class DatePreferenceControllerTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
@Mock
|
@Mock
|
||||||
private AlarmManager mAlarmManager;
|
private TimeDetector mTimeDetector;
|
||||||
@Mock
|
@Mock
|
||||||
private DatePreferenceController.DatePreferenceHost mHost;
|
private DatePreferenceController.DatePreferenceHost mHost;
|
||||||
@Mock
|
@Mock
|
||||||
@@ -52,7 +52,7 @@ public class DatePreferenceControllerTest {
|
|||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
when(mContext.getSystemService(Context.ALARM_SERVICE)).thenReturn(mAlarmManager);
|
when(mContext.getSystemService(TimeDetector.class)).thenReturn(mTimeDetector);
|
||||||
mPreference = new RestrictedPreference(RuntimeEnvironment.application);
|
mPreference = new RestrictedPreference(RuntimeEnvironment.application);
|
||||||
mController = new DatePreferenceController(mContext, mHost, mAutoTimePreferenceController);
|
mController = new DatePreferenceController(mContext, mHost, mAutoTimePreferenceController);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user