Google Cloud Console でキーを作成
もうね、キーを作成しようと思う度に何かしら前回と変更があるんだよね。
オリジナルの英語が変わっているのか、日本語訳がわかり易く変更されているのかはわからないけど、なんとも毎回ちょびっと悩むのが嫌…。
まずは Google Cloud Console にアクセス。
新しい Project を作成して「API と認証」の「API」で「Google Maps Android API 2.0」を「有効」にする。
次に「認証情報」で「新しいキーを作成」をクリック。
作成するのは「Android キー」。
で、ターミナルで SHA1 を作成。
paraches-no-iMac:arc paraches$ _JAVA_OPTIONS='-Dfile.encoding=UTF-8' keytool -list -v -keystore ~/.android/debug.keystore Picked up _JAVA_OPTIONS: -Dfile.encoding=UTF-8 キーストアのパスワードを入力してください: ***************** 警告 警告 警告 ***************** * キーストアに保存された情報の完全性は検証されて * * いません! 完全性を検証するには、キーストアの * * パスワードを入力する必要があります。 * ***************** 警告 警告 警告 ***************** キーストアのタイプ: JKS キーストアのプロバイダ: SUN キーストアには 1 エントリが含まれます。 別名: androiddebugkey 作成日: 2014/01/29 エントリタイプ: PrivateKeyEntry 証明連鎖の長さ: 1 証明書[1]: 所有者: CN=Android Debug, O=Android, C=US 発行者: CN=Android Debug, O=Android, C=US シリアル番号: 52e7dafa 有効期間の開始日: Wed Jan 29 01:29:46 JST 2014 終了日: Fri Jan 22 01:29:46 JST 2044 証明書のフィンガープリント: MD5: ----------------------------------------------- SHA1: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 署名アルゴリズム名: SHA1withRSA バージョン: 3 ******************************************* ******************************************* paraches-no-iMac:arc paraches$
Google Cloud Console で入力する値は、アプリケーションのパッケージ名が com.paraches.android.myApplication なら
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx;com.paraches.android.myApplication
になる。
これを「キーを作成する」で表示されたダイアログに入力して「作成」をクリック。
これで「API キー」作成終了!
最後に AndroidManifest.xml にパーミションや API キーを記入すれば準備完了。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.paraches.android.myApplication" > <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="---------------------------------------"/> <activity android:name="com.paraches.android.myApplication.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>