am 11c26701: am a52bc2f0: Merge "Revises several lines of comments based on Googler feedback (~8 in total)." into lmp-mr1-ub-docs
* commit '11c267018f9180e9d56558de829ab4a640ecff74':
Revises several lines of comments based on Googler feedback (~8 in total).
diff --git a/wearable/wear/AlwaysOn/Wearable/src/main/AndroidManifest.xml b/wearable/wear/AlwaysOn/Wearable/src/main/AndroidManifest.xml
index c0fce9f..12c4b03 100644
--- a/wearable/wear/AlwaysOn/Wearable/src/main/AndroidManifest.xml
+++ b/wearable/wear/AlwaysOn/Wearable/src/main/AndroidManifest.xml
@@ -30,6 +30,12 @@
<!--If you want your app to run on pre-22, then set required to false -->
<uses-library android:name="com.google.android.wearable" android:required="false" />
+ <!--
+ To update the screen more than once per minute in ambient mode, developers should set
+ the launch mode for the activity to single instance. Otherwise, the AlarmManager launch
+ intent will open a new activity every time the Alarm is triggered rather than reusing
+ the same (already active) Activity.
+ -->
<activity android:name="com.example.android.wearable.wear.alwayson.MainActivity"
android:label="@string/app_name"
android:launchMode="singleInstance"
diff --git a/wearable/wear/AlwaysOn/Wearable/src/main/java/com/example/android/wearable/wear/alwayson/MainActivity.java b/wearable/wear/AlwaysOn/Wearable/src/main/java/com/example/android/wearable/wear/alwayson/MainActivity.java
index 51f287d..0eb7f47 100644
--- a/wearable/wear/AlwaysOn/Wearable/src/main/java/com/example/android/wearable/wear/alwayson/MainActivity.java
+++ b/wearable/wear/AlwaysOn/Wearable/src/main/java/com/example/android/wearable/wear/alwayson/MainActivity.java
@@ -255,10 +255,15 @@
long timeMs = System.currentTimeMillis();
if (isAmbient()) {
- /** Prevents time drift while calculating trigger time (based on state). */
+ /** Calculate next trigger time (based on state). */
long delayMs = AMBIENT_INTERVAL_MS - (timeMs % AMBIENT_INTERVAL_MS);
long triggerTimeMs = timeMs + delayMs;
+ /**
+ * Note: Make sure you have set activity launchMode to singleInstance in the manifest.
+ * Otherwise, it is easy for the AlarmManager launch intent to open a new activity
+ * every time the Alarm is triggered rather than reusing this Activity.
+ */
mAmbientStateAlarmManager.cancel(mAmbientStatePendingIntent);
mAmbientStateAlarmManager.setExact(
AlarmManager.RTC_WAKEUP,
@@ -266,7 +271,7 @@
mAmbientStatePendingIntent);
} else {
- /** Prevents time drift. */
+ /** Calculate next trigger time (based on state). */
long delayMs = ACTIVE_INTERVAL_MS - (timeMs % ACTIVE_INTERVAL_MS);
mActiveModeUpdateHandler.removeMessages(MSG_UPDATE_SCREEN);