0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AndroidアプリからのGoogle Drive API使用方法まとめ - (3) 認証情報設定編

Last updated at Posted at 2022-08-28

目的

  • Androidアプリからの Google Drive API Ver.3 (旧REST API) 使用方法をまとめる。

  • ここでは下図の手順(b)、デバッグ時にアプリからAPIアクセスする際の認証情報を設定する手順について説明する。
    Key_Certificate_Debug_b.png

  • 全体の記事はこちら

環境

  • OS:Windows10 Professional 21H2
  • Android Studio 2021.2.1
  • ブラウザ:Google Chrome 103.0.5060.66(64bit)

アプリからAPIアクセス時の認証情報登録

(1) Google APIコンソールへログイン。

(2) Google Drive APIを有効化したプロジェクトの選択。

  • アプリ情報登録時に関連付けたアプリ(プロジェクト)を選択する。
    GcloudApiLibK.png

(3) OAuthクライアントIDの設定。

  • 画面左側から"認証情報"を選択する。
    GcloudApiLibS.png

  • "CREATE CREDENTIALS"から"OAuth クライアント ID"を選択する。
    GcloudApiLibT.png

  • 認証を行うOAuthサーバーで個々のアプリを識別するためのクライアントIDを設定する。

  • アプリの種類により認証シーケンスが異なるため、まずは "アプリの種類" で "Android"を指定する。
    GcloudApiLib9.png

アプリの種類やシーケンスについては、OAuth 2.0 を使用した Google API へのアクセス - シナリオ を参照。

(4) Androidアプリ固有の設定。

  • "アプリの種類" でAndroidを指定すると固有の項目が表示される。最初に下図(a)部で "名前" を指定する。これは API コンソールでクライアントを識別するためだけに使われ、ユーザーが見るものではないので何でも良い。ただし、開発中に必要なデバッグ用とGoogle Play登録後に設定するリリース版は別のクライアントIDとなるため、両者を区別できる名前が良いかもしれない。
    GcloudApiLibB.png

  • 次に(b)部でパッケージ名を指定する。AndroidManifest.xmlで指定した名前を入力する。

  • (c)部でSHA-1 証明書のフィンガープリントを指定する。これはOAuthサーバーがアプリを認証するためのもので、この時点ではデバッグ用アプリを動作させるために必要となる。(フィンガープリントを指定しないとGoogleDriveへのアクセス処理がデバッグできない。)

  • デバッグ用のSHA-1 証明書のフィンガープリントは、Windowsのコマンドプロンプトから以下のコマンドを入力することで取得できる。(ユーザーのフォルダがC:\Users\hogeの場合)

      C:\Users\hoge>keytool -keystore C:\Users\hoge/.android/debug.keystore -list -v
      キーストアのパスワードを入力してください:
    

    パスワードとして "android" を入力すると、以下が表示される

      キーストアのタイプ: JKS
      キーストア・プロバイダ: SUN
    
      キーストアには1エントリが含まれます
    
      別名: androiddebugkey
      :
      証明書のフィンガプリント:
               SHA1: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
      :
    
  • 上記コマンドのオプションは環境のバージョンにより異なる場合がある。OAuthクライアントID 画面(d) 部のアイコンをコピーしてコマンドプロンプトへ張り付けた方が間違いが無い。(この場合、"path-to-debug-or-production-keystore" はユーザーフォルダ以下へ変更する。"C:\Users\hoge/.android/debug.keystore"等。)

  • パスワード入力して表示された "証明書のフィンガプリント:" の後ろにある xx:xx:xx...をコピーして (c)部へ張り付けた後、(e) 部の "作成" をクリックする。

  • 最後に "OAuth クライアントを作成しました" の画面が表示されるので、"OK" をクリックする。開発したAndroidアプリを動作させるだけなら認証情報は使わないので、特にダウンロードする必要は無い。
    GcloudApiLibC.png

  • 証明書は開発環境をインストールする毎に変更されるため、フィンガープリントはAndroid Studioを再インストールする度に毎回設定する必要がある。

参考

変更履歴

  • 2022/8/28 初版
  • 2022/12/3 誤記修正
  • 2022/12/10 開発環境再インストール時の証明書フィンガープリント設定に関する記述を追加
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?