Androidアプリ開発における Google Cloud Messaging や Analytics の設定方法や手順についての備忘録


![Androidアプリ開発における Google Cloud Messaging や Analytics の設定方法や手順についての備忘録.png](https://qiita-image-store.s3.amazonaws.com/0/41522/fc2bf32c-9b83-93d2-d901-121425b5780e.png "Androidアプリ開発における Google Cloud Messaging や Analytics の設定方法や手順についての備忘録.png")



本記事の前段についてはこちら
[iOSエンジニアのAndroidアプリ開発奮闘記 - Qiita](http://qiita.com/RyoAbe/private/f44299bfdb470dcebb8f)

# はじめに
本記事は、Android アプリ開発で Google Cloud Messaging、Analytics API を使用するにあたって API の設定方法や手順について備忘録的にまとめたものになります。
*※ Google I/O 2016 で Firebase が発表されたことによりそちらにいずれ移行することになるかと思いますのご覧になる方はご注意ください。*
- [Firebase を拡張、統合アプリ プラットフォームとして登場](https://googledevjp.blogspot.jp/2016/05/firebase.html)

# 登場する用語について
### Google Developers Console
API の管理コンソール
https://console.developers.google.com/

### Add Google Services
- プロジェクトの作成や Analytics、Gloud Messaging API を有効にするページ
- https://developers.google.com/mobile/add

### Package name
- [Add Google Services](https://developers.google.com/mobile/add) でプトジェクト作成する際に指定する
- app/build.gradle の `android.defaultConfig.applicationId` と一致していなければならない

### サーバー API キー
- [Add Google Services](https://developers.google.com/mobile/add) で `Cloud Messaging` を有効にすることで自動生成される
- プッシュ通知をサーバーから送信するのに使用する

### Android API キー
- [Add Google Services](https://developers.google.com/mobile/add) で `Cloud Messaging` を有効にすることで自動生成される
- API をアプリから使用するのに使用する
- google-service.json に書き込まれている

### google-service.json
- [Add Google Services](https://developers.google.com/mobile/add) でプロジェクトを作成すると生成/ダウンロードができる
- `api_key` や `package_name` などの APIを使用するにあたったプロジェクト情報がjson形式で記載されている
- APIを使用するにはこのファイルをアプリ内に組み込む必要がある


# 手順
### 1. API 管理する Google アカウントでログイン

### 2. [Add Google Services](https://developers.google.com/mobile/add) にアクセス

### 3. app の作成
- 任意の App name を指定すると Google Develpers Console に新しいプロジェクトが生成される
- packge name は、 `app/build.gradle` の `android.defaultConfig.applicationId` と一致していなければならない
![スクリーンショット 2016-10-09 17.07.19.png](https://qiita-image-store.s3.amazonaws.com/0/41522/5df254a5-9e77-a847-a1a2-c08f0fd0094f.png "スクリーンショット 2016-10-09 17.07.19.png")

### 4. Analytics を有効にする
- 新しい Analytics account を作るか、既存 Account を使用するかを選択
- tracking ID が生成される
![スクリーンショット 2016-10-09 17.11.46.png](https://qiita-image-store.s3.amazonaws.com/0/41522/14ea374f-b7e2-336a-32d8-1bcd3b989711.png "スクリーンショット 2016-10-09 17.11.46.png")

### 5. Cloud Messaging を有効にする
- `Server API Key` 、`Sender ID` が生成される
- `Server API Key` はサーバー側にセットする

### 7. [Generate configuration files] -> [Download google-services.json] をクリック
![スクリーンショット 2016-10-09 17.19.01.png](https://qiita-image-store.s3.amazonaws.com/0/41522/1a2afa40-320f-ae63-a887-681ad2974281.png "スクリーンショット 2016-10-09 17.19.01.png")


### 8. Google Developers Console でプロジェクトの作成と API キーが生成されていることを確認
- [Google Developers Console](https://console.developers.google.com/)
- サーバー用、アプリ用のAPI キーが生成されている
![スクリーンショット 2016-10-09 17.39.38.png](https://qiita-image-store.s3.amazonaws.com/0/41522/a27bfee7-f53c-78f2-1b41-349f17dba644.png "スクリーンショット 2016-10-09 17.39.38.png")


### 9. google-services.json をプロジェクトの app/src/{variant}/ 配下にD&D
![スクリーンショット 2016-10-09 17.28.52.png](https://qiita-image-store.s3.amazonaws.com/0/41522/ef9510eb-40f6-d286-274f-2dabee4220cf.png "スクリーンショット 2016-10-09 17.28.52.png")