SWR12で収集した心拍数データを、APIを使って自分のプログラムに取り込む方法を実装してみました。SONYはウェアラブルデバイスで収集した情報をLifelogというアプリで簡単に見ることができるようになっています。APIというAPI経由で蓄積したデータに簡単にアクセスできるようになっています。ここから先、「どうしてここまでやっているのに、これができないんだ!?」というソニー仕様の残念なところが顔を出してきます。APIから扱えるデータの種類は限定されます。APIでは扱うことができません。APIから取れるデータは、「寝てるか起きているか程度しか取れない」と言っても差支えがないと思います。Fitを使えということらしいです。applications』あたりを見ると、投げやり感が半端ないです。Fitから具体的にどのように持ってくれば良いのか、SonyにもGoogleにも十分な資料がないのですよね...。ネット上の情報を検索しても、見つかるサンプルがAndroid専用のものだったり、端折って書かれているクラスのFQCNがわからなかったりと、一筋縄ではいかないようです。(Android)GoogleのアカウントSWR12とスマホをペアリングし、Lifelogアプリからデータが閲覧できる状態まで設定します。Fitにデータは送られていません。2アプリの設定を行う必要があります。Fit」をタップします。設定画面のスイッチをONに設定します。Fitにもデータが送られるようになります。Fitのアプリを起動したタイミングでデータが送信されているっぽいです。APIの有効化Googleのサービスを使うための認証情報が必要になります。クライアントID」形式で作成します。認証情報の作成に成功したら、クライアントIDとクライアントシークレットをJSON形式でダウンロードします。ConsoleからAPIの有効化を行います。API」を選択(見つからない場合は検索すればOKです)。「▶有効にする」をクリックすれば、APIが有効化されます。必要なライブラリは、以下の2つです。SEで実行するために必要なJARファイルのみを抽出して使用しています。1607の組み合わせです。8よりも前のバージョン、Windows以外のプラットフォームでも問題なく動くと思います。Consoleより取得しダウンロードしたJSON形式の認証情報をJavaのクラスパスから参照できる場所に配置し実行をします。ブラウザが起動しGoogleの認証が実行がはじまります。(一度許可を与えると認証情報がファイルに保存され、有効期間内は認証画面の表示なく実行されます)認証画面の「許可」ボタンを押すと、最近24時間分くらいの心拍数データの取得を試み、成功すると標準出力(コンソール)に値が一覧表示されます。2アプリの設定でGoogleFitをONに設定すること。クライアントID)の取得を行うこと。認証情報はJSON形式でダウンロードし、Javaの実行環境から見える適当な位置に配置すること。APIを有効化しておくこと。データが取れるところまではできましたが、Lifelogアプリにはストレス状態などの情報も表示されています。アプリからみると過去分に遡及して見ることが可能なので、どこかにこれらのデータが格納されていることは間違いないと思います。次は、これらのデータをどうにかして取られないか試してみようと思います。2017/05/25追記client_id.jsonの配置場所について問い合わせをいただきました。client_id.jsonは、下図のようにソースフォルダの直下に配置しています。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。