aboutsummaryrefslogtreecommitdiff
path: root/wearable
diff options
context:
space:
mode:
authorJeremy Walker <jewalker@google.com>2018-06-26 12:51:44 -0700
committerJeremy Walker <jewalker@google.com>2018-07-02 12:48:52 -0700
commita06ec9916c9d94222f5c7b3e7846088e14bf10a0 (patch)
tree20321876a7fcabca0f2e484300c712d9cc74ce52 /wearable
parent84056fc1e94c576b97613e5382703cc6ca883962 (diff)
downloadandroid-a06ec9916c9d94222f5c7b3e7846088e14bf10a0.tar.gz
Updates verify sample with latest APIs.
Bug: 4368433 Test: Manual tests. Change-Id: Idcb388471e7dfd83a738111407e5c329e7818ea0
Diffstat (limited to 'wearable')
-rw-r--r--wearable/wear/WearVerifyRemoteApp/Application/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainMobileActivity.java106
-rw-r--r--wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle12
-rw-r--r--wearable/wear/WearVerifyRemoteApp/Wearable/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainWearActivity.java96
-rw-r--r--wearable/wear/WearVerifyRemoteApp/template-params.xml2
4 files changed, 62 insertions, 154 deletions
diff --git a/wearable/wear/WearVerifyRemoteApp/Application/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainMobileActivity.java b/wearable/wear/WearVerifyRemoteApp/Application/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainMobileActivity.java
index ed151193..e9e9a496 100644
--- a/wearable/wear/WearVerifyRemoteApp/Application/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainMobileActivity.java
+++ b/wearable/wear/WearVerifyRemoteApp/Application/src/main/java/com/example/android/wearable/wear/wearverifyremoteapp/MainMobileActivity.java
@@ -20,8 +20,6 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.ResultReceiver;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
@@ -29,14 +27,11 @@ import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
-import com.google.android.gms.common.ConnectionResult;
-import com.google.android.gms.common.api.GoogleApiClient;
-import com.google.android.gms.common.api.PendingResult;
-import com.google.android.gms.common.api.ResultCallback;
-import com.google.android.gms.wearable.CapabilityApi;
+import com.google.android.gms.tasks.OnCompleteListener;
+import com.google.android.gms.tasks.Task;
+import com.google.android.gms.wearable.CapabilityClient;
import com.google.android.gms.wearable.CapabilityInfo;
import com.google.android.gms.wearable.Node;
-import com.google.android.gms.wearable.NodeApi;
import com.google.android.gms.wearable.Wearable;
import com.google.android.wearable.intent.RemoteIntent;
@@ -49,9 +44,7 @@ import java.util.Set;
* user to open the app listing on the Wear devices' Play Store.
*/
public class MainMobileActivity extends AppCompatActivity implements
- GoogleApiClient.ConnectionCallbacks,
- GoogleApiClient.OnConnectionFailedListener,
- CapabilityApi.CapabilityListener {
+ CapabilityClient.OnCapabilityChangedListener {
private static final String TAG = "MainMobileActivity";
@@ -123,16 +116,14 @@ public class MainMobileActivity extends AppCompatActivity implements
private Set<Node> mWearNodesWithApp;
private List<Node> mAllConnectedNodes;
- private GoogleApiClient mGoogleApiClient;
-
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d(TAG, "onCreate()");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
- mInformationTextView = (TextView) findViewById(R.id.information_text_view);
- mRemoteOpenButton = (Button) findViewById(R.id.remote_open_button);
+ mInformationTextView = findViewById(R.id.information_text_view);
+ mRemoteOpenButton = findViewById(R.id.remote_open_button);
mInformationTextView.setText(CHECKING_MESSAGE);
@@ -142,49 +133,22 @@ public class MainMobileActivity extends AppCompatActivity implements
openPlayStoreOnWearDevicesWithoutApp();
}
});
-
- mGoogleApiClient = new GoogleApiClient.Builder(this)
- .addApi(Wearable.API)
- .addConnectionCallbacks(this)
- .addOnConnectionFailedListener(this)
- .build();
}
-
@Override
protected void onPause() {
Log.d(TAG, "onPause()");
super.onPause();
- if ((mGoogleApiClient != null) && mGoogleApiClient.isConnected()) {
-
- Wearable.CapabilityApi.removeCapabilityListener(
- mGoogleApiClient,
- this,
- CAPABILITY_WEAR_APP);
-
- mGoogleApiClient.disconnect();
- }
+ Wearable.getCapabilityClient(this).removeListener(this, CAPABILITY_WEAR_APP);
}
@Override
protected void onResume() {
Log.d(TAG, "onResume()");
super.onResume();
- if (mGoogleApiClient != null) {
- mGoogleApiClient.connect();
- }
- }
- @Override
- public void onConnected(@Nullable Bundle bundle) {
- Log.d(TAG, "onConnected()");
-
- // Set up listeners for capability changes (install/uninstall of remote app).
- Wearable.CapabilityApi.addCapabilityListener(
- mGoogleApiClient,
- this,
- CAPABILITY_WEAR_APP);
+ Wearable.getCapabilityClient(this).addListener(this, CAPABILITY_WEAR_APP);
// Initial request for devices with our capability, aka, our Wear app installed.
findWearDevicesWithApp();
@@ -196,16 +160,6 @@ public class MainMobileActivity extends AppCompatActivity implements
findAllWearDevices();
}
- @Override
- public void onConnectionSuspended(int i) {
- Log.d(TAG, "onConnectionSuspended(): connection to location client suspended: " + i);
- }
-
- @Override
- public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
- Log.e(TAG, "onConnectionFailed(): " + connectionResult);
- }
-
/*
* Updates UI when capabilities change (install/uninstall wear app).
*/
@@ -224,26 +178,25 @@ public class MainMobileActivity extends AppCompatActivity implements
private void findWearDevicesWithApp() {
Log.d(TAG, "findWearDevicesWithApp()");
- // You can filter this by FILTER_REACHABLE if you only want to open Nodes (Wear Devices)
- // directly connect to your phone.
- PendingResult<CapabilityApi.GetCapabilityResult> pendingResult =
- Wearable.CapabilityApi.getCapability(
- mGoogleApiClient,
- CAPABILITY_WEAR_APP,
- CapabilityApi.FILTER_ALL);
+ Task<CapabilityInfo> capabilityInfoTask = Wearable.getCapabilityClient(this)
+ .getCapability(CAPABILITY_WEAR_APP, CapabilityClient.FILTER_ALL);
- pendingResult.setResultCallback(new ResultCallback<CapabilityApi.GetCapabilityResult>() {
+ capabilityInfoTask.addOnCompleteListener(new OnCompleteListener<CapabilityInfo>() {
@Override
- public void onResult(@NonNull CapabilityApi.GetCapabilityResult getCapabilityResult) {
- Log.d(TAG, "onResult(): " + getCapabilityResult);
+ public void onComplete(Task<CapabilityInfo> task) {
- if (getCapabilityResult.getStatus().isSuccess()) {
- CapabilityInfo capabilityInfo = getCapabilityResult.getCapability();
+ if (task.isSuccessful()) {
+ Log.d(TAG, "Capability request succeeded.");
+
+ CapabilityInfo capabilityInfo = task.getResult();
mWearNodesWithApp = capabilityInfo.getNodes();
+
+ Log.d(TAG, "Capable Nodes: " + mWearNodesWithApp);
+
verifyNodeAndUpdateUI();
} else {
- Log.d(TAG, "Failed CapabilityApi: " + getCapabilityResult.getStatus());
+ Log.d(TAG, "Capability request failed to return any results.");
}
}
});
@@ -252,20 +205,21 @@ public class MainMobileActivity extends AppCompatActivity implements
private void findAllWearDevices() {
Log.d(TAG, "findAllWearDevices()");
- PendingResult<NodeApi.GetConnectedNodesResult> pendingResult =
- Wearable.NodeApi.getConnectedNodes(mGoogleApiClient);
+ Task<List<Node>> NodeListTask = Wearable.getNodeClient(this).getConnectedNodes();
- pendingResult.setResultCallback(new ResultCallback<NodeApi.GetConnectedNodesResult>() {
+ NodeListTask.addOnCompleteListener(new OnCompleteListener<List<Node>>() {
@Override
- public void onResult(@NonNull NodeApi.GetConnectedNodesResult getConnectedNodesResult) {
+ public void onComplete(Task<List<Node>> task) {
- if (getConnectedNodesResult.getStatus().isSuccess()) {
- mAllConnectedNodes = getConnectedNodesResult.getNodes();
- verifyNodeAndUpdateUI();
+ if (task.isSuccessful()) {
+ Log.d(TAG, "Node request succeeded.");
+ mAllConnectedNodes = task.getResult();
} else {
- Log.d(TAG, "Failed CapabilityApi: " + getConnectedNodesResult.getStatus());
+ Log.d(TAG, "Node request failed to return any results.");
}
+
+ verifyNodeAndUpdateUI();
}
});
}
@@ -338,4 +292,4 @@ public class MainMobileActivity extends AppCompatActivity implements
}
}
}
-} \ No newline at end of file
+}
diff --git a/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle b/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
index bb93be97..ac9f1454 100644
--- a/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
+++ b/wearable/wear/WearVerifyRemoteApp/Wearable/build.gradle
@@ -6,7 +6,7 @@ buildscript {
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.0.1'
+ classpath 'com.android.tools.build:gradle:3.1.3'
}
}
@@ -21,15 +21,15 @@ repositories {
dependencies {
- compile 'com.android.support:wear:27.1.0'
+ implementation 'com.android.support:wear:27.1.1'
- compile 'com.google.android.gms:play-services-wearable:11.8.0'
- compile 'com.android.support:support-v13:27.1.0'
+ implementation 'com.google.android.gms:play-services-wearable:15.0.1'
+ implementation 'com.android.support:support-v13:27.1.1'
- provided 'com.google.android.wearable:wearable:2.3.0'
+ compileOnly 'com.google.android.wearable:wearable:2.3.0'
- compile 'com.google.android.support:wearable:2.3.0'
+ implementation 'com.google.android.support:wearable:2.3.0'
}
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 53b71aa7..6521b090 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,15 +15,13 @@
*/
package com.example.android.wearable.wear.wearverifyremoteapp;
-import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.ResultReceiver;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.wear.ambient.AmbientMode;
+import android.support.v4.app.FragmentActivity;
+import android.support.wear.ambient.AmbientModeSupport;
import android.support.wearable.phone.PhoneDeviceType;
import android.support.wearable.view.ConfirmationOverlay;
import android.util.Log;
@@ -31,11 +29,9 @@ import android.view.View;
import android.widget.Button;
import android.widget.TextView;
-import com.google.android.gms.common.ConnectionResult;
-import com.google.android.gms.common.api.GoogleApiClient;
-import com.google.android.gms.common.api.PendingResult;
-import com.google.android.gms.common.api.ResultCallback;
-import com.google.android.gms.wearable.CapabilityApi;
+import com.google.android.gms.tasks.OnCompleteListener;
+import com.google.android.gms.tasks.Task;
+import com.google.android.gms.wearable.CapabilityClient;
import com.google.android.gms.wearable.CapabilityInfo;
import com.google.android.gms.wearable.Node;
import com.google.android.gms.wearable.Wearable;
@@ -47,11 +43,9 @@ 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 Activity implements
- AmbientMode.AmbientCallbackProvider,
- GoogleApiClient.ConnectionCallbacks,
- GoogleApiClient.OnConnectionFailedListener,
- CapabilityApi.CapabilityListener {
+public class MainWearActivity extends FragmentActivity implements
+ AmbientModeSupport.AmbientCallbackProvider,
+ CapabilityClient.OnCapabilityChangedListener {
private static final String TAG = "MainWearActivity";
@@ -107,8 +101,6 @@ public class MainWearActivity extends Activity implements
private Node mAndroidPhoneNodeWithApp;
- private GoogleApiClient mGoogleApiClient;
-
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d(TAG, "onCreate()");
@@ -117,10 +109,10 @@ public class MainWearActivity extends Activity implements
setContentView(R.layout.activity_main);
// Enables Ambient mode.
- AmbientMode.attachAmbientSupport(this);
+ AmbientModeSupport.attach(this);
- mInformationTextView = (TextView) findViewById(R.id.information_text_view);
- mRemoteOpenButton = (Button) findViewById(R.id.remote_open_button);
+ mInformationTextView = findViewById(R.id.information_text_view);
+ mRemoteOpenButton = findViewById(R.id.remote_open_button);
mInformationTextView.setText(CHECKING_MESSAGE);
@@ -130,12 +122,6 @@ public class MainWearActivity extends Activity implements
openAppInStoreOnPhone();
}
});
-
- mGoogleApiClient = new GoogleApiClient.Builder(this)
- .addApi(Wearable.API)
- .addConnectionCallbacks(this)
- .addOnConnectionFailedListener(this)
- .build();
}
@@ -144,48 +130,19 @@ public class MainWearActivity extends Activity implements
Log.d(TAG, "onPause()");
super.onPause();
- if ((mGoogleApiClient != null) && mGoogleApiClient.isConnected()) {
- Wearable.CapabilityApi.removeCapabilityListener(
- mGoogleApiClient,
- this,
- CAPABILITY_PHONE_APP);
-
- mGoogleApiClient.disconnect();
- }
+ Wearable.getCapabilityClient(this).removeListener(this, CAPABILITY_PHONE_APP);
}
@Override
protected void onResume() {
Log.d(TAG, "onResume()");
super.onResume();
- if (mGoogleApiClient != null) {
- mGoogleApiClient.connect();
- }
- }
-
- @Override
- public void onConnected(@Nullable Bundle bundle) {
- Log.d(TAG, "onConnected()");
- // Set up listeners for capability changes (install/uninstall of remote app).
- Wearable.CapabilityApi.addCapabilityListener(
- mGoogleApiClient,
- this,
- CAPABILITY_PHONE_APP);
+ Wearable.getCapabilityClient(this).addListener(this, CAPABILITY_PHONE_APP);
checkIfPhoneHasApp();
}
- @Override
- public void onConnectionSuspended(int i) {
- Log.d(TAG, "onConnectionSuspended(): connection to location client suspended: " + i);
- }
-
- @Override
- public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
- Log.e(TAG, "onConnectionFailed(): " + connectionResult);
- }
-
/*
* Updates UI when capabilities change (install/uninstall phone app).
*/
@@ -199,26 +156,23 @@ public class MainWearActivity extends Activity implements
private void checkIfPhoneHasApp() {
Log.d(TAG, "checkIfPhoneHasApp()");
- PendingResult<CapabilityApi.GetCapabilityResult> pendingResult =
- Wearable.CapabilityApi.getCapability(
- mGoogleApiClient,
- CAPABILITY_PHONE_APP,
- CapabilityApi.FILTER_ALL);
-
- pendingResult.setResultCallback(new ResultCallback<CapabilityApi.GetCapabilityResult>() {
+ Task<CapabilityInfo> capabilityInfoTask = Wearable.getCapabilityClient(this)
+ .getCapability(CAPABILITY_PHONE_APP, CapabilityClient.FILTER_ALL);
+ capabilityInfoTask.addOnCompleteListener(new OnCompleteListener<CapabilityInfo>() {
@Override
- public void onResult(@NonNull CapabilityApi.GetCapabilityResult getCapabilityResult) {
- Log.d(TAG, "onResult(): " + getCapabilityResult);
+ public void onComplete(Task<CapabilityInfo> task) {
- if (getCapabilityResult.getStatus().isSuccess()) {
- CapabilityInfo capabilityInfo = getCapabilityResult.getCapability();
+ if (task.isSuccessful()) {
+ Log.d(TAG, "Capability request succeeded.");
+ CapabilityInfo capabilityInfo = task.getResult();
mAndroidPhoneNodeWithApp = pickBestNodeId(capabilityInfo.getNodes());
- verifyNodeAndUpdateUI();
} else {
- Log.d(TAG, "Failed CapabilityApi: " + getCapabilityResult.getStatus());
+ Log.d(TAG, "Capability request failed to return any results.");
}
+
+ verifyNodeAndUpdateUI();
}
});
}
@@ -301,11 +255,11 @@ public class MainWearActivity extends Activity implements
}
@Override
- public AmbientMode.AmbientCallback getAmbientCallback() {
+ public AmbientModeSupport.AmbientCallback getAmbientCallback() {
return new MyAmbientCallback();
}
- private class MyAmbientCallback extends AmbientMode.AmbientCallback {
+ private class MyAmbientCallback extends AmbientModeSupport.AmbientCallback {
/** Prepares the UI for ambient mode. */
@Override
public void onEnterAmbient(Bundle ambientDetails) {
diff --git a/wearable/wear/WearVerifyRemoteApp/template-params.xml b/wearable/wear/WearVerifyRemoteApp/template-params.xml
index 6c3f3f9b..7b17a137 100644
--- a/wearable/wear/WearVerifyRemoteApp/template-params.xml
+++ b/wearable/wear/WearVerifyRemoteApp/template-params.xml
@@ -34,7 +34,7 @@
<dependency>com.google.android.support:wearable:2.3.0</dependency>
- <dependency_wearable>com.android.support:wear:27.1.0</dependency_wearable>
+ <dependency_wearable>com.android.support:wear:27.1.1</dependency_wearable>
<!-- Include additional dependencies here.-->
<!-- dependency>com.google.android.gms:play-services:5.0.+</dependency -->