Google Fit のデータを Tasker で変数に読み込むにはどうすればよいですか?
より具体的には、たとえば、携帯電話 + フィットネス トラッカーによってカウントされ、Google Fit に渡される今日の現在の歩数を読み取りたいとします。私の目標は、この数値を含む変数を作成して、それを操作することです。Google Fit History API について読みましたが、Tasker 経由でアクセスする方法がわかりません。
Google Fit のデータを Tasker で変数に読み込むにはどうすればよいですか?
より具体的には、たとえば、携帯電話 + フィットネス トラッカーによってカウントされ、Google Fit に渡される今日の現在の歩数を読み取りたいとします。私の目標は、この数値を含む変数を作成して、それを操作することです。Google Fit History API について読みましたが、Tasker 経由でアクセスする方法がわかりません。
試行錯誤の末、私はそれを理解しました。これはかなり「複雑な」手順です。
準備:
ステップ 1 - https://console.developers.google.com/projectでプロジェクトを作成し、クライアント ID とシークレットを取得します。(それについては、より詳細なチュートリアルがたくさんあります)。プロジェクトは、Web としてではなく、アプリとして構成する必要があります。urn:ietf:wg:oauth:2.0:oob
リダイレクト URL にも追加する必要があります。(http://localhost
そこにとどまるかもしれません)
ステップ 2 - Tasker 用の RESTask プラグインをインストールします。
ステップ 3 - 後藤https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/fitness.activity.read&redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=code&client_id=YOUR_CLIENT_ID
。そこでコードを取得します。そのコードをコピーします。
ステップ 4 - RESTask プラグイン アクションを使用するタスクを作成します。次のように構成します。
Request Type: POST
Host: https://accounts.google.com/o/oauth2/token
小切手Enable custom body
カスタム本文を次のように設定します。code=%THE_COPIED_CODE&client_id=%YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&redirect_uri=urn:ietf:wg:oauth:2.0:oob&grant_type=authorization_code
に切り替えてHeader
押すAdd more
:
Name: Content-Type
Value: application/x-www-form-urlencoded
すべてがうまくいった場合は、リターン コード 200 が返されます。%rtres
返された応答 ( ) を で分割しsplitter
"
ます。%rtres4
内にあるトークンと 内にあるリフレッシュ トークンを保存します%rtres14
。
歩数の取得
ステップ 1 - 何かを取得する前に、有効なトークンが必要です。準備中に取得したトークンは、限られた時間のみ有効です。保存したはずの更新トークンを使用して、新しいトークンを要求できます。有効なトークンを取得するには、別のボディでステップ 4をやり直します。
client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&refresh_token=YOUR_REFRESH_TOKEN&grant_type=refresh_token
分割を繰り返すと、新しいトークンが に保存され%rtres4
ます。
ステップ 2 - これで、貴重なデータを取得できます。%start
最初に、開始時刻と終了時刻を定義します (およびに保存%end
)。それらはナノ秒単位でなければならないことに注意してください。を使用できます%TIMEMS*1000000
。したがって、次の構成で RESTask アクションを追加します。
Request Type: GET
Host: https://www.googleapis.com/fitness/v1/users/me/dataSources/derived:com.google.step_count.delta:com.google.android.gms:estimated_steps/datasets/%start-%end
チェックしないEnable custom body
に切り替えてHeader
押すAdd more
(3 回):
Name: Content-Type
Value: application/json
Name: Authorization
Value: Bearer YOUR_TOKEN
Name: X-JavaScript-User-Agent
Value: Google APIs Explorer
すべてがうまくいった場合は、リターン コード 200 が返されます。歩数はレスポンスで返されます。
このデータでやりたいことを自由にやってください。完全な歩数を取得するには、値を要約する必要がある場合があります。(応答を分割し、for ループで繰り返します)。ホーム画面に独自のカスタム Google Fit 歩数ウィジェットを表示するために、歩数を Zooper ウィジェットに渡すことにしました。