Android で使ってみる

このガイドでは、Android 版 Google Fit で開発を開始する方法について説明します。

セットアップ

アプリの作成を開始する前に、次のセクションの手順を完了します。

Google Fit API を使用するには、Google アカウントが必要です。新しいアカウントを作成することも、既存のアカウントを使用することもできます。ユーザーの視点からアプリをテストするには、別のアカウントを作成することをおすすめします。

開発ホストで Google Play 開発者サービスの最新のクライアント ライブラリを取得します。

  1. Android SDK Manager を開きます。
  2. [SDK Tools] で [Google Play 開発者サービス] を見つけます。
  3. これらのパッケージのステータスが [インストール済み] でない場合は、両方を選択して [パッケージをインストール] をクリックします。

Fitness API を有効にするには、OAuth 2.0 クライアント ID を取得します。

Fitness API を使用してアプリをビルドする場合は、Android Studio 開発環境を使用することをおすすめします。Android Studio で新しいプロジェクトを作成し、構成する方法については、プロジェクトを作成するをご覧ください。

Android Studio で、モジュールの build.gradle ファイルを開き、Google Play 開発者サービス クライアント ライブラリを依存関係として追加します。

Kotlin DSLGroovy DSL
plugin {
    id("com.android.application")
}

...

dependencies {
        implementation("com.google.android.gms:play-services-fitness:21.2.0")
        implementation("com.google.android.gms:play-services-auth:21.3.0")
}
apply plugin: 'com.android.application'

...

dependencies {
    implementation 'com.google.android.gms:play-services-fitness:21.2.0'
    implementation 'com.google.android.gms:play-services-auth:21.3.0'
}

これにより、アプリのビルド時に Gradle がフィットネス SDK を自動的にダウンロードします。

アプリをビルドしてテストする

設定手順が完了したら、アプリの作成を開始できます。まず、アプリで保存および読み取りできるデータの種類について学びます。詳しくは、Google Fit でデータの操作をご覧ください。

一部のデータ型を読み書きするには、アプリが Android の権限をリクエストする必要があります。

アプリにアクセス権が付与されているデータ型は、認可スコープに対応しています。これらの権限をリクエストするには、アプリがアクセスする必要があるデータ型を FitnessOptions インスタンスに追加する必要があります。アプリが Google Fit データのいずれかを使用するようリクエストすると、Android SDK はデータがどのスコープに属しているかを自動的に確認し、それらのスコープに対する承認をユーザーに求めます。

API クライアントを作成し、データの書き込みまたは読み取りにアプリがアクセスする必要があるデータ型を追加します。次のエンドポイントを使用できます。

  • SensorsClient: ローカル デバイスとコンパニオン デバイスのハードウェア センサーから、さまざまな健康とウェルネスに関するデータソースにアクセスします。
  • RecordingClient: 低電力の常時オンのバックグラウンドでセンサーデータを収集する場合。
  • HistoryClient: Google Fit の過去のデータの挿入、削除、読み取り。
  • SessionsClient: ユーザー アクティビティのセッションを作成、管理します。
  • GoalsClient: Google Fit でユーザーが作成したハートポイントと歩数の目標を読み取ります。
  • ConfigClient: Google Fit プラットフォームのカスタムデータ型と設定にアクセスします。

Fitness API クライアントを作成する方法の例をご覧ください。

権限を求められた場合にユーザーが行う承認フローは次のようになります。

図 1. ユーザーの承認フロー。
  1. Android の権限: ユーザーは、アプリをダウンロードする前に、アプリがリクエストした Android の権限を確認できます。アプリがダウンロードされると、アプリは必要な実行時の権限をリクエストし、ユーザーがこれらの権限を許可または拒否します。
  2. 確認と接続: アプリは、他のデータ型へのアクセスをリクエストする前に、権限が付与されているかどうかを確認します。
  3. OAuth スコープのリクエスト: アクセスするデータ型に必要な OAuth スコープをアプリに付与するようユーザーに求めるメッセージが表示されます。
  4. アクセスが適用される: ユーザーが権限を付与すると、アプリはユーザーが権限を付与したスコープに属するデータ型にアクセスできるようになります。

適格性確認を申請する

アプリをビルドしてテストしたら、機密性の高いスコープと制限付きスコープに必要なさまざまなレベルの理由を添えて適格性の確認を申請する必要があります。