2016-04-15 46 views
1

Googleの履歴APIを使用して、前週に行った手順を1日ごとに分けています。私のアプリはデータを記録していない、私はちょうどフィットAPIのデータを取得するヒストリーAPIを使用したい。 https://fit.google.com/の私の説明によると、3日前に151ステップを取ったが、毎日取ったステップ数を取得しようとすると、0データセットの結果が返される。次のコードを使用すると、7つのバケットが返されますが、これらのバケットにはそれぞれ0個のデータセットが含まれています。私は何とかこのように間違っているはずだと思うが、私はどこにいるのか分からない。Google Fit History APIからデータを取得できません

private class GetData extends AsyncTask<Void, Void, Void> { 
    protected Void doInBackground(Void... params) { 
     Calendar cal = Calendar.getInstance(); 
     Date now = new Date(); 
     cal.setTime(now); 
     long endTime = cal.getTimeInMillis(); 
     cal.add(Calendar.WEEK_OF_YEAR, -1); 
     long startTime = cal.getTimeInMillis(); 


     DataReadRequest readRequest = new DataReadRequest.Builder() 
       .aggregate(DataType.TYPE_STEP_COUNT_DELTA, DataType.AGGREGATE_STEP_COUNT_DELTA) 
       .bucketByTime(1, TimeUnit.DAYS) 
       .setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS) 
       .build(); 

      System.out.println("here"); 
     DataReadResult dataReadResult = 
       Fitness.HistoryApi.readData(mClient, readRequest).await(1, TimeUnit.MINUTES); 
     System.out.println(dataReadResult.getBuckets().size()); 
     System.out.println(dataReadResult.getDataSets().size()); 

答えて

0

いくつか考えられる原因があります:

1)あなたはまだこのタイプのデータを登録していますか?

2)あなたのアプリがGoogleサービスと正しく接続されていません。 Google開発コンソールからOAuthクライアントIDを作成しましたか?これはGG Fitサービスに接続するためのGoogleの指導で必須です(別のアプリを同じコンピュータに複製する場合は別のOAuthクライアントIDを作成しなおす必要があります) 1つはGoogleにログインしてOAuthクライアントIDを作成するためのコンソールを作成し、1つはアプリケーションの起動後にログインすると、その許可を受け入れるためにログインするように要求されます...理由は分かりませんが動作します)

注:お使いの端末でGoogleの設定に関する検索を行うことができます(設定 - > Google)。ここでGoogleサービス(GG Fitサービスを含む)に接続するアプリを見つけることができます。すべて切断し、OAuthクライアントID、アプリを削除してから、すべてを再作成することをおすすめします。

Mttdat。

関連する問題