テンプレートの利用による Shell App SDK for Android の組み込み (Android Studio)

本ドキュメントは、Shell App SDK 1.3.4 以降のテンプレートプロジェクトを対象にしています。

Android Studio のセットアップ

http://developer.android.com/sdk へアクセスして、Android Studio をダウンロードします。「Download Android Studio for Mac」ボタンをクリックして Android Studio のイメージファイルをダウンロードしてください。 (android-studio-ide.dmg)

img ファイルを開き、Applications ディレクトリへインストールを行ってください。

インストールが完了したら、アプリケーションの「Android Studio.app」を実行します。実行するとセットアップウィザードが開きますが、「Next」ボタンをクリックして先に進んで下さい。全てデフォルトで問題ありません。

テンプレートプロジェクトをインポートする

Shell App SDK のサンプルプロジェクトをインポートします。このサンプルプロジェクトをテンプレートとして、Shell App SDK を使用したアプリを作成することができます。

Android Studio を起動すると以下のような画面が表示されますので、「Open an exitsting Android Studio project」をクリックします。

ディレクトリを選択する画面が表示されますので、Shell App SDK を解凍したディレクトリ配下の samples/ShellAppSDKSample を選択し、「Choose」ボタンをクリックしてください。

Google Play services のインストール

Shell App SDK を使用するためには、Google Play services ライブラリをインストールする必要があります。赤枠の「SDK Manager」ボタンをクリックしてください。

「Android SDK Manager」が起動しますので、下の方の Extras 内にある「Android Support Library」と「Google Play services」にチェックを入れて「Install Packages」ボタンをクリックします。この 2 つ以外のライブラリはインストールする必要はありません。

許可を求められますので、文章を良く読んで Accept しインストールを続けてください。以上で Google Play services のインストールは完了しました。

テンプレートプロジェクトの編集

build.gradle ファイルの編集

ShellAppSDKSample プロジェクトの shellAppSDKSample/build.gradle の android/defaultConfig/applicationId に記載されている_MOBAGE_APPLICATION_ID_ と記載されている部分を 12XXXXXX というデベロッパーサイトに記載されている AppId に書き換えてください。

また、shellAppSDKSample/build.gradle の dependencies の項目に、以下を追記します。以下の文字列を記載することにより、Google Play services ライブラリをインポートできます。

Google Play services version 6.5 以降より、Google Play services の機能を個別にインポートすることができるようになりました。

http://android-developers.blogspot.jp/2014/12/google-play-services-and-dex-method.html

Shell App SDK を利用するためには、下記パッケージのインポートが必要です。

どちらも変更すると以下のような画面になりますので、確認して下さい。

AndroidManifest.xml の編集

AndroidManifest.xml は build.gradle によって自動的に書き換わります。

Shell App SDK for Android では、セマンティックなバージョン番号をつけなければなりません。

セマンティックバージョニングとは、バージョン番号を 1.3.2 のようなX.Y.Z (Major.Minor.Patch) で表現する方法のことです。
それぞれの番号は 65536 未満の値にしてください。なお、セマンティックバージョニングについて詳しくはこちらを参照してください。

テンプレートを利用する場合は既に 1.0.0 に設定されてセマンティックになっていますが、バージョンを変更する際は、android:versionName の値をセマンティックなバージョン番号であることを確認してください。

 

 

GameActivity.java の編集

GameActivity.java の onCreate メソッドに記載されている以下のコードの _EMBEDDED_KEY_ と _EMBEDDED_SECRET_ という文字列の部分をデベロッパーサイトに記載されている Embedded Key/Embedded Secret に置き換えます。

以下のように書き換えてください。

 

strings.xml の編集

ShellAppSDKSample プロジェクトの shellAppSDKSample/src/main/res/values/strings.xml の _INITIAL_URL_ という文字列の部分をデベロッパーサイトに記載されている Client URL に記載されている内容に書き換えます。

以下のように書き換えてください。

プロジェクトへの反映

「Sync Project With Gradle Files」ボタンをクリックして、build.gradle などを変更した結果をプロジェクトへ反映してください。

反映すると、これまで出ていたエラーは無くなりプロジェクトをビルドできるようになります。また、プロジェクトの構成も以下のように表示が Android 専用のものに変わります。元の汎用プロジェクト構成表示に戻す場合は赤枠のドロップダウンメニューから Project を選択してください。

プロジェクトのビルド

まず、実行するプロジェクトを選択します。shellAppSDKSample を選択してください。

実行、もしくはデバッグボタンをクリックして実行してください。

Android 実機を USB 接続したまま実行ボタンをクリックすると、端末選択画面が表示されます。選択して「OK」ボタンをクリックすることで端末上で実行が可能です。

実機上でサンプルが実行されますので、「login/connect」ボタンをクリックしてログインなどを行ってみてください。

本サンプルは Shell App SDK を使ったテンプレートとして活用いただける形になっていますので、このテンプレートプロジェクトを改造して、Shell App SDK を用いたアプリを作成してみてください。また、バックボタン、リロードボタン、メニューボタンが実装されていますが、メニューボタンはjavascript:app.menu.toggle()をブリッジで呼び出す実装になっています。サーバーサイドのサンプルとあわせて実装方法を確認してみてください。

 

更新履歴

  • 2015/06/04
    • Shell App SDK 1.3.4 リリースに伴い、AndroidManifest.xml の設定他を修正しました。
  • 2015/02/17
    • セマンティックなバージョン番号が必要であることを追記
  • 2015/02/05
    • 新規作成
 

 

 

 

PREVIOUS

テンプレートの利用による Shell App SDK for Android の組み込み (Eclipse)

NEXT

Remote Notification の組み込み