Google API 第2回

投稿者: | 2015年1月6日

今回はGoogle APIを使用したAndroidアプリの開発手順を紹介します。
ここではAndroidアプリの開発環境が整っているものとして説明します。
使用するGoogle APIはGoogleのCalendar APIです。

以下の手順で説明します。
・Calendar APIのダウンロード
・Calendar APIを抜き出す
・ライブラリのインポート
・「google-play-services」ライブラリの設定
・Google Developer Consoleの設定
・Google API共通のプログラムを記述

使用する開発言語などは下記の通りです。
・Windows7
・Eclipse 4.4.1(IDE)
・Java 1.8.0_25 64bit

■Calendar APIのダウンロード
参考サイトのCalendar APIライブラリ(Java用)からGoolge APIのライブラリをダウンロードします。ダウンロードしたらファイルを解凍して任意の場所に配置します。

■Calendar APIを抜き出す
解凍したフォルダからCalendar APIのライブラリ「google-api-services-calendar-v3-rev111-java-1.19.0」を抜き出します。
また、解凍したフォルダの「libs」フォルダから開発に必要な下記のライブラリを抜き出します。
・google-api-client-1.19.0
・google-api-client-android-1.19.0
・google-http-client-1.19.0
・google-http-client-android-1.19.0
・google-http-client-gson-1.19.0
・google-oauth-client-1.19.0
・gson-2.1
・jsr305-1.3.9
※ライブラリのバージョンが古い場合は最新のバージョンにしてください。

■ライブラリのインポート
EclipseでAndroidのプロジェクトを作成します。
プロジェクトに「libs」フォルダを作成して抜き出したライブラリを移します。

■「google-play-services」ライブラリの設定
Calendar APIを使用するために「google-play-services」ライブラリをプロジェクトに設定します。
手順は以下の通りです。
・Eclipseに「google-play-services」ライブラリをインポート
Eclipseの「ファイル>インポート」でインポート画面を開きます。
「Android>Exiting Android Code Into Workspace」を選択して「次へ」ボタンを押します。インストールしたAndoid SDKの「~\Android\android-sdk\extras\google\google_play_services\libproject\google-play-services_lib」フォルダを指定してを選択します。「Project to Import」に「google-play-services」が表示されるのでインポートを行います。

・プロジェクトに「google-play-services」ライブラリを設定
プロジェクトのプロパティからAndroidを選択、「追加」ボタンを押して「google-play-services」を追加します。
※外部ライブラリなどから「google-play-services」ライブラリをインポートすると実行時に認識しません。

・プロジェクトに設定した「google-play-services」ライブラリを有効にする
「google-play-services」有効にするために、
AndroidManifest.xmlのapplicationタグ内に下記のコードを追加します。

<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version">

■Google Developer Consoleの設定
AndroidアプリとCalendar APIの通信を有効にするためにGoogle Developers Consoleの設定を行います。
Google Developers Consoleにアクセスしてプロジェクトを作成します。
作成したプロジェクトのメニューの「API」から「Calendar API」を探しステータスを「ON」にします。
メニューの「認証情報」から「OAuth」の「新しいクライアントIDを作成」を選択します。
「パッケージ名」には、Androidアプリのパッケージ名、
「署名証明書フィンガープリント(SHA1)」にはパッケージ発行時の証明書のSHA1を入力します。
※端末からデバッグする時は「C:\Users\{ユーザ名}\.android\」フォルダにある「debug.keystore」からSHA1を取得し、「署名証明書フィンガープリント(SHA1)」に入力する必要があります。

■Google API共通のプログラムを記述
プロジェクトのMainActivity.javaを下記のように編集します。
編集が終わったら、Calendar APIのプログラムを記述するだけでカレンダー一覧の取得などができます。
※GoogleCalendarのスコープとはカレンダーを操作できる範囲のことで、
これを指定することによりアクセス許可された範囲でカレンダーの操作ができます。

public class MainActivity extends Activity {
private static Calendar client;
private static GoogleAccountCredential credential;
static final String ACCOUNT_NAME = "Gmailのアカウント";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//GoogleCalendarのスコープとGoogleのアカウントをセット
credential = GoogleAccountCredential.usingOAuth2(this, Arrays.asList(CalendarScopes.CALENDAR));
credential.setSelectedAccountName(ACCOUNT_NAME);
//カレンダーを操作するためのインスタンスを生成
client = new Gmail.Builder(AndroidHttp.newCompatibleTransport(),new GsonFactory(), credential).setApplicationName("test").build();
}
}

以上がGoolge APIを使用したAndroidアプリ開発手順です。
Androidアプリ開発ではどのGoogle APIも上記の手順で実装することができます。ライブラリやプロジェクトのMainActivity.javaを各Google API用に書き換えて是非試してみてください。

次回はCalendar APIを掘り下げて紹介します。

<参考サイト>
Calendar APIライブラリ(Java用)

 

システム構築に関してのご依頼、ご質問等がある場合は弊社ホームページ上のお問い合わせフォームもしくは下記連絡先までお問い合わせ下さい。

お問い合わせフォーム

株式会社ヴィンテージ

TEL:093-513-7255