【发布时间】:2016-04-13 02:22:31
【问题描述】:
下面的 google api 调用没有产生任何回调。只有一个警告“FragmentActivity:为未知片段传递的活动结果。”
mClient = new GoogleApiClient.Builder(this)
.addApi(Fitness.SENSORS_API)
.addScope(new Scope(Scopes.FITNESS_ACTIVITY_READ_WRITE))
.addConnectionCallbacks(
new GoogleApiClient.ConnectionCallbacks() {
@Override
public void onConnected(Bundle bundle) {
Log.i(TAG, "Connected!!!");
// Now you can make calls to the Fitness APIs.
findFitnessDataSources();
}
@Override
public void onConnectionSuspended(int i) {
// If your connection to the sensor gets lost at some point,
// you'll be able to determine the reason and react to it here.
if (i == GoogleApiClient.ConnectionCallbacks.CAUSE_NETWORK_LOST) {
Log.i(TAG, "Connection lost. Cause: Network Lost.");
} else if (i
== GoogleApiClient.ConnectionCallbacks.CAUSE_SERVICE_DISCONNECTED) {
Log.i(TAG,
"Connection lost. Reason: Service Disconnected");
}
}
}
)
.enableAutoManage(this, 0, new GoogleApiClient.OnConnectionFailedListener() {
@Override
public void onConnectionFailed(ConnectionResult result) {
Log.i(TAG, "Google Play services connection failed. Cause: " +
result.toString());
}
})
.build();
mClient.connect();
【问题讨论】:
-
您是否在 findFitnessDataSources() 中注册了您的移动客户端?
-
那是另一种情况,“已连接!!”标签没有出现意味着 findFitnessDataSources() 也不会执行
-
.enableAutoManage 需要扩展,ng FragmentActivity 你在这个活动/片段中扩展了什么?
-
另外,您可以通过 .addConnectionCallbacks(new GoogleApiClient.OnConnectionFailedListener(){.....}).build(); 自行管理连接失败;
-
面临同样的问题。
标签: android android-fragments google-play-services google-api-client