aboutsummaryrefslogtreecommitdiff
path: root/wearable
diff options
context:
space:
mode:
authorJeremy Walker <jewalker@google.com>2017-10-24 15:36:11 -0700
committerJeremy Walker <jewalker@google.com>2017-10-24 17:05:37 -0700
commit417c1e5e79464808db9e2cc8625d87b2a1b5e1d0 (patch)
tree05709d7da9809a1d89bd7eae5450263870345041 /wearable
parentd8b5621640750f458b6c6f13f459b5c03dc4a7e6 (diff)
downloadandroid-417c1e5e79464808db9e2cc8625d87b2a1b5e1d0.tar.gz
2/2: Updates remaining wear samples to new Ambient methods.
Bug: 67751763 Test: Manually tested all wear samples changed. Change-Id: Iea289b4f0832e22b24b39b1431b7ee1fd04b6c6e
Diffstat (limited to 'wearable')
-rw-r--r--wearable/wear/SpeedTracker/Wearable/src/main/java/com/example/android/wearable/speedtracker/WearableMainActivity.java47
-rw-r--r--wearable/wear/SpeedTracker/template-params.xml6
-rw-r--r--wearable/wear/WearNotifications/Shared/build.gradle4
-rw-r--r--wearable/wear/WearNotifications/Wearable/src/main/java/com/example/android/wearable/wear/wearnotifications/StandaloneMainActivity.java46
-rw-r--r--wearable/wear/WearNotifications/template-params.xml14
-rw-r--r--wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle15
-rw-r--r--wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java35
-rw-r--r--wearable/wear/WearVerifyRemoteApp/template-params.xml4
8 files changed, 139 insertions, 32 deletions
diff --git a/wearable/wear/SpeedTracker/Wearable/src/main/java/com/example/android/wearable/speedtracker/WearableMainActivity.java b/wearable/wear/SpeedTracker/Wearable/src/main/java/com/example/android/wearable/speedtracker/WearableMainActivity.java
index 20ded86f..d6e2f3f8 100644
--- a/wearable/wear/SpeedTracker/Wearable/src/main/java/com/example/android/wearable/speedtracker/WearableMainActivity.java
+++ b/wearable/wear/SpeedTracker/Wearable/src/main/java/com/example/android/wearable/speedtracker/WearableMainActivity.java
@@ -30,6 +30,7 @@ import com.google.android.gms.wearable.Wearable;
import android.Manifest;
import android.annotation.SuppressLint;
+import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
@@ -41,7 +42,8 @@ import android.os.Handler;
import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
-import android.support.wearable.activity.WearableActivity;
+import android.support.v4.content.ContextCompat;
+import android.support.wear.ambient.AmbientMode;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
@@ -60,7 +62,8 @@ import java.util.concurrent.TimeUnit;
* and if the user exceeds the speed limit, it will turn red. In order to show the user that GPS
* location data is coming in, a small green dot keeps on blinking while GPS data is available.
*/
-public class WearableMainActivity extends WearableActivity implements
+public class WearableMainActivity extends Activity implements
+ AmbientMode.AmbientCallbackProvider,
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener,
ActivityCompat.OnRequestPermissionsResultCallback,
@@ -105,6 +108,12 @@ public class WearableMainActivity extends WearableActivity implements
private boolean mWaitingForGpsSignal;
+ /**
+ * Ambient mode controller attached to this display. Used by the Activity to see if it is in
+ * ambient mode.
+ */
+ private AmbientMode.AmbientController mAmbientController;
+
private GoogleApiClient mGoogleApiClient;
private Handler mHandler = new Handler();
@@ -140,7 +149,8 @@ public class WearableMainActivity extends WearableActivity implements
* in ambient mode, check this page:
* https://developer.android.com/training/wearables/apps/always-on.html
*/
- setAmbientEnabled();
+ // Enables Ambient mode.
+ mAmbientController = AmbientMode.attachAmbientSupport(this);
mCalendar = Calendar.getInstance();
@@ -494,4 +504,35 @@ public class WearableMainActivity extends WearableActivity implements
private boolean hasGps() {
return getPackageManager().hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS);
}
+
+ @Override
+ public AmbientMode.AmbientCallback getAmbientCallback() {
+ return new MyAmbientCallback();
+ }
+
+ private class MyAmbientCallback extends AmbientMode.AmbientCallback {
+ /** Prepares the UI for ambient mode. */
+ @Override
+ public void onEnterAmbient(Bundle ambientDetails) {
+ super.onEnterAmbient(ambientDetails);
+
+ Log.d(TAG, "onEnterAmbient() " + ambientDetails);
+
+ // Changes views to grey scale.
+ mSpeedTextView.setTextColor(
+ ContextCompat.getColor(getApplicationContext(), R.color.white));
+ }
+
+ /** Restores the UI to active (non-ambient) mode. */
+ @Override
+ public void onExitAmbient() {
+ super.onExitAmbient();
+
+ Log.d(TAG, "onExitAmbient()");
+
+ // Changes views to color.
+ mSpeedTextView.setTextColor(
+ ContextCompat.getColor(getApplicationContext(), R.color.green));
+ }
+ }
} \ No newline at end of file
diff --git a/wearable/wear/SpeedTracker/template-params.xml b/wearable/wear/SpeedTracker/template-params.xml
index 881d94eb..63170627 100644
--- a/wearable/wear/SpeedTracker/template-params.xml
+++ b/wearable/wear/SpeedTracker/template-params.xml
@@ -21,7 +21,7 @@
<package>com.example.android.wearable.speedtracker</package>
<minSdk>18</minSdk>
- <targetSdkVersion>25</targetSdkVersion>
+ <targetSdkVersion>26</targetSdkVersion>
<minSdkVersionWear>23</minSdkVersionWear>
<compileSdkVersionWear>26</compileSdkVersionWear>
@@ -32,8 +32,8 @@
<has_handheld_app>true</has_handheld_app>
</wearable>
- <dependency>com.android.support:design:25.3.1</dependency>
- <dependency_wearable>com.android.support:wear:26.0.0</dependency_wearable>
+ <dependency>com.android.support:design:27.0.0</dependency>
+ <dependency_wearable>com.android.support:wear:27.0.0</dependency_wearable>
<dependency>com.google.android.gms:play-services-maps</dependency>
<dependency>com.google.android.gms:play-services-location</dependency>
diff --git a/wearable/wear/WearNotifications/Shared/build.gradle b/wearable/wear/WearNotifications/Shared/build.gradle
index 0970e28a..d1035153 100644
--- a/wearable/wear/WearNotifications/Shared/build.gradle
+++ b/wearable/wear/WearNotifications/Shared/build.gradle
@@ -19,7 +19,7 @@ repositories {
}
dependencies {
- compile 'com.android.support:support-v4:26.0.0'
+ compile 'com.android.support:support-v4:27.0.0'
}
// The sample build uses multiple directories to
@@ -33,7 +33,7 @@ List<String> dirs = [
android {
compileSdkVersion 26
- buildToolsVersion "25.0.3"
+ buildToolsVersion "26.0.1"
defaultConfig {
minSdkVersion 18
diff --git a/wearable/wear/WearNotifications/Wearable/src/main/java/com/example/android/wearable/wear/wearnotifications/StandaloneMainActivity.java b/wearable/wear/WearNotifications/Wearable/src/main/java/com/example/android/wearable/wear/wearnotifications/StandaloneMainActivity.java
index eb8842cc..8edf2c9a 100644
--- a/wearable/wear/WearNotifications/Wearable/src/main/java/com/example/android/wearable/wear/wearnotifications/StandaloneMainActivity.java
+++ b/wearable/wear/WearNotifications/Wearable/src/main/java/com/example/android/wearable/wear/wearnotifications/StandaloneMainActivity.java
@@ -15,6 +15,7 @@
*/
package com.example.android.wearable.wear.wearnotifications;
+import android.app.Activity;
import android.app.Notification;
import android.app.PendingIntent;
import android.content.Intent;
@@ -30,9 +31,9 @@ import android.support.v4.app.NotificationCompat.MessagingStyle;
import android.support.v4.app.NotificationManagerCompat;
import android.support.v4.app.RemoteInput;
import android.support.v4.content.ContextCompat;
+import android.support.wear.ambient.AmbientMode;
import android.support.wear.widget.WearableLinearLayoutManager;
import android.support.wear.widget.WearableRecyclerView;
-import android.support.wearable.activity.WearableActivity;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;
@@ -53,7 +54,8 @@ import com.example.android.wearable.wear.wearnotifications.handlers.MessagingMai
* standalone Android Wear apps. All {@link NotificationCompat} examples use
* {@link NotificationCompat.Style}.
*/
-public class StandaloneMainActivity extends WearableActivity {
+public class StandaloneMainActivity extends Activity implements
+ AmbientMode.AmbientCallbackProvider {
private static final String TAG = "StandaloneMainActivity";
@@ -83,18 +85,26 @@ public class StandaloneMainActivity extends WearableActivity {
private WearableRecyclerView mWearableRecyclerView;
private CustomRecyclerAdapter mCustomRecyclerAdapter;
+ /**
+ * Ambient mode controller attached to this display. Used by Activity to see if it is in
+ * ambient mode.
+ */
+ private AmbientMode.AmbientController mAmbientController;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "onCreate()");
setContentView(R.layout.activity_main);
- setAmbientEnabled();
+
+ // Enables Ambient mode.
+ mAmbientController = AmbientMode.attachAmbientSupport(this);
mNotificationManagerCompat = NotificationManagerCompat.from(getApplicationContext());
- mMainFrameLayout = (FrameLayout) findViewById(R.id.mainFrameLayout);
- mWearableRecyclerView = (WearableRecyclerView) findViewById(R.id.recycler_view);
+ mMainFrameLayout = findViewById(R.id.mainFrameLayout);
+ mWearableRecyclerView = findViewById(R.id.recycler_view);
// Aligns the first and last items on the list vertically centered on the screen.
mWearableRecyclerView.setEdgeItemsCenteringEnabled(true);
@@ -762,4 +772,30 @@ public class StandaloneMainActivity extends WearableActivity {
intent.putExtra("app_uid", getApplicationInfo().uid);
startActivity(intent);
}
+
+ @Override
+ public AmbientMode.AmbientCallback getAmbientCallback() {
+ return new MyAmbientCallback();
+ }
+
+ private class MyAmbientCallback extends AmbientMode.AmbientCallback {
+ /** Prepares the UI for ambient mode. */
+ @Override
+ public void onEnterAmbient(Bundle ambientDetails) {
+ super.onEnterAmbient(ambientDetails);
+
+ Log.d(TAG, "onEnterAmbient() " + ambientDetails);
+ // In our case, the assets are already in black and white, so we don't update UI.
+ }
+
+ /** Restores the UI to active (non-ambient) mode. */
+ @Override
+ public void onExitAmbient() {
+ super.onExitAmbient();
+
+ Log.d(TAG, "onExitAmbient()");
+ // In our case, the assets are already in black and white, so we don't update UI.
+ }
+ }
+
} \ No newline at end of file
diff --git a/wearable/wear/WearNotifications/template-params.xml b/wearable/wear/WearNotifications/template-params.xml
index 699b7606..f393959c 100644
--- a/wearable/wear/WearNotifications/template-params.xml
+++ b/wearable/wear/WearNotifications/template-params.xml
@@ -32,15 +32,15 @@
<has_handheld_app>true</has_handheld_app>
</wearable>
- <dependency>com.android.support:appcompat-v7:26.0.0</dependency>
- <dependency>com.android.support:cardview-v7:26.0.0</dependency>
- <dependency>com.android.support:design:26.0.0</dependency>
+ <dependency>com.android.support:appcompat-v7:27.0.0</dependency>
+ <dependency>com.android.support:cardview-v7:27.0.0</dependency>
+ <dependency>com.android.support:design:27.0.0</dependency>
- <dependency_shared>com.android.support:support-v4:26.0.0</dependency_shared>
+ <dependency_shared>com.android.support:support-v4:27.0.0</dependency_shared>
- <dependency_wearable>com.android.support:appcompat-v7:26.0.0</dependency_wearable>
- <dependency_wearable>com.android.support:wear:26.0.0</dependency_wearable>
- <dependency_wearable>com.android.support:design:26.0.0</dependency_wearable>
+ <dependency_wearable>com.android.support:appcompat-v7:27.0.0</dependency_wearable>
+ <dependency_wearable>com.android.support:wear:27.0.0</dependency_wearable>
+ <dependency_wearable>com.android.support:design:27.0.0</dependency_wearable>
<!-- Include additional dependencies here.-->
<!-- dependency>com.google.android.gms:play-services:5.0.+</dependency -->
diff --git a/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle b/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
index fc4aaa4f..982cc9a4 100644
--- a/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
+++ b/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
@@ -22,14 +22,15 @@ repositories {
dependencies {
+ compile 'com.android.support:wear:27.0.0'
- compile 'com.google.android.gms:play-services-wearable:10.2.4'
- compile 'com.android.support:support-v13:25.3.1'
+ compile 'com.google.android.gms:play-services-wearable:11.4.2'
+ compile 'com.android.support:support-v13:27.0.0'
- provided 'com.google.android.wearable:wearable:2.0.3'
+ provided 'com.google.android.wearable:wearable:2.1.0'
- compile 'com.google.android.support:wearable:2.0.3'
+ compile 'com.google.android.support:wearable:2.1.0'
}
@@ -43,9 +44,9 @@ List<String> dirs = [
android {
- compileSdkVersion 25
+ compileSdkVersion 26
- buildToolsVersion "25.0.3"
+ buildToolsVersion "26.0.1"
defaultConfig {
versionCode 1
@@ -53,7 +54,7 @@ android {
minSdkVersion 23
- targetSdkVersion 25
+ targetSdkVersion 26
}
diff --git a/wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java b/wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java
index 31882b0b..feb31aae 100644
--- a/wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java
+++ b/wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java
@@ -15,6 +15,7 @@
*/
package com.example.android.wearable.wear.wearverifyremoteapp;
+import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
@@ -22,7 +23,7 @@ import android.os.Handler;
import android.os.ResultReceiver;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
-import android.support.wearable.activity.WearableActivity;
+import android.support.wear.ambient.AmbientMode;
import android.support.wearable.view.ConfirmationOverlay;
import android.util.Log;
import android.view.View;
@@ -46,7 +47,8 @@ import java.util.Set;
* Checks if the phone app is installed on remote device. If it is not, allows user to open app
* listing on the phone's Play or App Store.
*/
-public class MainWearActivity extends WearableActivity implements
+public class MainWearActivity extends Activity implements
+ AmbientMode.AmbientCallbackProvider,
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener,
CapabilityApi.CapabilityListener {
@@ -113,7 +115,9 @@ public class MainWearActivity extends WearableActivity implements
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
- setAmbientEnabled();
+
+ // Enables Ambient mode.
+ AmbientMode.attachAmbientSupport(this);
mInformationTextView = (TextView) findViewById(R.id.information_text_view);
mRemoteOpenButton = (Button) findViewById(R.id.remote_open_button);
@@ -299,4 +303,29 @@ public class MainWearActivity extends WearableActivity implements
}
return bestNodeId;
}
+
+ @Override
+ public AmbientMode.AmbientCallback getAmbientCallback() {
+ return new MyAmbientCallback();
+ }
+
+ private class MyAmbientCallback extends AmbientMode.AmbientCallback {
+ /** Prepares the UI for ambient mode. */
+ @Override
+ public void onEnterAmbient(Bundle ambientDetails) {
+ super.onEnterAmbient(ambientDetails);
+
+ Log.d(TAG, "onEnterAmbient() " + ambientDetails);
+ // In our case, the assets are already in black and white, so we don't update UI.
+ }
+
+ /** Restores the UI to active (non-ambient) mode. */
+ @Override
+ public void onExitAmbient() {
+ super.onExitAmbient();
+
+ Log.d(TAG, "onExitAmbient()");
+ // In our case, the assets are already in black and white, so we don't update UI.
+ }
+ }
} \ No newline at end of file
diff --git a/wearable/wear/WearVerifyRemoteApp/template-params.xml b/wearable/wear/WearVerifyRemoteApp/template-params.xml
index f45d4cb6..d76a9fa6 100644
--- a/wearable/wear/WearVerifyRemoteApp/template-params.xml
+++ b/wearable/wear/WearVerifyRemoteApp/template-params.xml
@@ -24,13 +24,13 @@
<minSdk>23</minSdk>
<minSdkVersionWear>23</minSdkVersionWear>
<targetSdkVersion>25</targetSdkVersion>
- <targetSdkVersionWear>25</targetSdkVersionWear>
+ <targetSdkVersionWear>26</targetSdkVersionWear>
<wearable>
<has_handheld_app>true</has_handheld_app>
</wearable>
- <dependency>com.google.android.support:wearable:2.0.3</dependency>
+ <dependency_wearable>com.android.support:wear:27.0.0</dependency_wearable>
<!-- Include additional dependencies here.-->
<!-- dependency>com.google.android.gms:play-services:5.0.+</dependency -->