2016-06-23 8 views
3

私はGoogle Fitで作業しようとしています。何らかの理由でアプリでGoogle Playサービスに接続できません。私はOAuthを完全にセットアップしました。私は別のアプリでそれをテストしました。すべてうまく動きました。具体的にはGoogleFitRepositoryを見てください。ここがAPIに接続しています。接続しようとすると、私はこのエラーを取得していGoogle Playサービスに接続できません。キャンセルステータスコード

:GitHubのに

W/AutoManageHelper: Unresolved error while connecting client. Stopping auto-manage. 
I/MyApp: Google Play services connection failed. Cause: ConnectionResult{statusCode=CANCELED, resolution=null, message=null} 

リンク:https://github.com/drb56/FitnessExplorer

を任意の助けいただければ幸いです。私はこの一日中立ち往生してきました!

編集:ここでは、APIがフィットAPIと一緒に実行されるようにサインインの新しい更新は、グーグルが必要で質問

public GoogleFitRepository(Activity activity) 
{ 
    mClient = new GoogleApiClient.Builder(activity.getApplicationContext()) 
      .addApi(Fitness.HISTORY_API) 
      .addApi(Fitness.SESSIONS_API) 
      .addScope(new Scope(Scopes.FITNESS_ACTIVITY_READ)) 
      .addConnectionCallbacks(this) 
      .enableAutoManage((FragmentActivity)activity, 0, new GoogleApiClient.OnConnectionFailedListener() { 
       @Override 
       public void onConnectionFailed(ConnectionResult result) { 
        Log.i("MyApp", "Google Play services connection failed. Cause: " + 
          result.toString()); 
       }}) 
      .build(); 

    activityList = new ArrayList<>(); 
    activityDataPointList = new ArrayList<>(); 
    calorieActivitiesToday = new ArrayList<>(); 
    dayActivities = new ArrayList<>(); 
} 
+0

適切な質問をしてください。少なくともコードを貼り付けてください。 – suku

+0

申し訳ありませんが、GoogleApiClientに接続するコードを追加しました – user292277

答えて

6

内のクラスからいくつかのコードがあります。

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) 
     .requestEmail() 
     .requestScopes(new Scope(Scopes.FITNESS_ACTIVITY_READ_WRITE), new Scope(Scopes.FITNESS_LOCATION_READ)) 
     .build(); 

googleApiClient = new GoogleApiClient.Builder(activity) 
     .addApi(Auth.GOOGLE_SIGN_IN_API, gso) 
     .addConnectionCallbacks(connectionCallbacks) 
     .addOnConnectionFailedListener(failedListener) 
     .addApi(Fitness.HISTORY_API) 
     .addApi(Fitness.SESSIONS_API) 
     .addApi(Fitness.RECORDING_API) 
     .addApi(Fitness.SENSORS_API) 
     .enableAutoManage(this, 0, this) 
     .build(); 

console.developers.google.comでAuth APIを有効にする必要があります。 Google Auth APIのサーバー側の実装を行ってください。さもなければ、上記のコードは動作しません

+0

GoogleSignInOptionsを必要としない別のアプリケーションがあります。いつこれが要件になったのですか? – user292277

+0

最近...約1ヶ月前...チュートリアルは更新されていません – suku

+0

それを追加してもまだ動作しません。実際に私のテスタープログラムは、私がそれを使用しても働いていません。それは私にデータを与えません。それから、私がコメントアウトすると、必要なデータが得られます。 – user292277

0

私は同じ問題をライブラリからGoogleFitで作業するときに持っていました。

<meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

アプリケーションのマニフェストにしていないライブラリのマニフェストに:長い研究の後、私は私が入れて持っていることを発見しました。

関連する問題