Home API は、OAuth 2.0 を使用して構造内のデバイスへのアクセス権を付与します。OAuth を使用すると、ユーザーはログイン認証情報を公開することなく、アプリやサービスに権限を付与できます。
すでに検証済みの OAuth クライアントがある場合(すでに公開されているアプリなど)、そのクライアントを使用して、新しいクライアントをセットアップしなくても Home API をテストできます。詳細については、既存の OAuth クライアントがある場合をご覧ください。
アプリに署名する
まず、Android Studio でアプリを実行して OAuth キーを生成します。Android Studio でアプリを実行またはデバッグすると、開発とデバッグ用の OAuth キーが自動的に生成されます。詳細については、Android Studio: デバッグビルドに署名するをご覧ください。
アプリが実行されたら、次の操作を行います。
モバイル デバイスをローカルマシンに接続します。Android Studio には、接続されているデバイスがモデル番号で表示されます。リストからデバイスを選択し、[プロジェクトを実行] をクリックします。これにより、サンプルアプリがビルドされ、モバイル デバイスにインストールされます。
詳細な手順については、Android デベロッパー サイトの ハードウェア デバイス上でのアプリの実行をご覧ください。
実行中のアプリを停止します。
Google Cloud コンソール ヘルプサイトの OAuth 2.0 / ネイティブ アプリケーション / Android の設定の手順に沿って、OAuth 証明書の SHA-1 フィンガープリントを取得します。
OAuth 同意画面を設定する
- Google Cloud コンソールでプロジェクト セレクタ ダッシュボードに移動し、OAuth 認証情報を作成するプロジェクトを選択します。
- [API とサービス] ページに移動し、ナビゲーション メニューで [認証情報] をクリックします。
この Google Cloud プロジェクトの同意画面をまだ構成していない場合は、[同意画面を構成] ボタンが表示されます。その場合は、次の手順で同意画面を構成します。問題が解決しない場合は、次のセクションに進みます。
- [同意画面を構成] をクリックします。OAuth 同意画面が表示されます。
- ユースケースに応じて [内部] または [外部] を選択し、[作成] をクリックします。[OAuth 同意画面] ペインが表示されます。
- 画面上の手順に沿って [アプリ情報ページ] に情報を入力し、[保存して次へ] をクリックします。[スコープ] ペインが表示されます。
- スコープを追加する必要はありません。[保存して次へ] をクリックします。[Test users] ペインが表示されます。
- アプリへのアクセスをテストするユーザーを追加する場合は、[ユーザーを追加] をクリックします。[ユーザーを追加] ペインが表示されます。テストユーザーには、アプリで権限を付与する権限があります。
- 空のフィールドに 1 つ以上の Google アカウントのメールアドレスを追加し、[追加] をクリックします。
- [保存して次へ] をクリックします。[Summary] ペインが表示されます。
- OAuth 同意画面の情報を確認して、[ダッシュボードに戻る] をクリックします。
詳細については、Google Cloud コンソール ヘルプサイトの OAuth 同意画面の設定をご覧ください。
アプリを登録して認証情報を作成する
OAuth 2.0 用にアプリを登録し、OAuth 認証情報を作成するには、OAuth 2.0 の設定の手順に沿って操作してください。アプリの種類(ネイティブ/Android アプリ)を指定する必要があります。
Google Cloud コンソール ヘルプサイトの OAuth 2.0 / ネイティブ アプリケーションの設定の手順に沿って、アプリの署名で取得した SHA-1 フィンガープリントを、Google Cloud コンソールで設定した OAuth クライアントに追加します。
モバイル デバイスをローカルマシンに接続し、リストからデバイスを選択して、[プロジェクトを実行] をもう一度クリックして実行します。詳細な手順については、Android デベロッパー サイトの ハードウェア デバイス上でアプリを実行するをご覧ください。
既存の OAuth クライアントがある場合
公開済みのアプリの検証済み OAuth クライアントがすでにある場合は、既存の OAuth クライアントを使用して Home API をテストできます。
Home API のテストと使用に Google Home Developer Console の登録は必要ありません。ただし、別の統合から検証済みの OAuth クライアントがあっても、アプリを公開するには承認済みの Developer Console 登録が必要です。
次のことに注意してください。
既存の OAuth クライアントを使用する場合、ユーザー数の上限は 100 ユーザーです。テストユーザーの追加については、OAuth 同意画面を設定するをご覧ください。OAuth の確認とは別に、Home APIs では、アプリに権限を付与できるユーザー数が 100 人に制限されています。この制限は、Developer Console の登録が完了すると解除されます。
Developer Console 登録 は、Home API を使用してアプリを更新する準備として、OAuth を介してデバイスタイプの権限付与を制限する準備ができたら、承認のために送信する必要があります。
OAuth 検証が保留中の Google Cloud アプリの場合、検証が完了するまでユーザーは OAuth フローを完了できません。権限を付与しようとすると、次のエラーで失敗します。
Access blocked: <Project Name> has not completed the Google verification process.