アプリケーションのアップロードと動作確認

アプリケーションをユーザーに公開するためには、アプリケーションを Sandbox にアップロードする必要があります。
以下の手順に従って、アプリケーションを Sandbox にアップロードしてください。

使用するSDKのバージョン確認

まず、アプリケーションのビルドおよび動作確認に使用するSDKを確認します。アプリケーションをビルドする際には、必ずリリースするプラットフォームに該当するSDKを使用してビルドしてください。
Mobage Developers で配布されている SDK バージョンは全てアップロードすることが可能です。

Mobage ngCore SDK のダウンロードはできなくなりました。

 
※ iOS の場合、2013/5/1 以降に審査申請に提出頂けるバージョンは、1.9 系では 1.9.1 以降、1.10 系では 1.10.2 以降、 1.11 系では 1.11.1 以降になります。また、これ以降にリリースされたバージョンについても同様に審査申請が可能となります。

Androidアプリの場合

「アプリケーション詳細」画面の「Androidアプリ設定」を開きます。

「アプリバージョン管理へ」をクリックして「アプリバージョン管理」画面を開きます。


アプリケーションのbuildディレクトリをzipでアーカイブします。

「バージョン番号」には管理したいバージョン番号を、「アプリzipファイル」には生成されたzipファイルを選択します。

以上の必要な設定を行い、Mobage ngCore SDKのランタイムとアプリケーションをパッケージしたSandbox用の apk ファイルをダウンロードします。USB 接続で端末にインストールしてご利用ください。

Sandbox 用のAndroid Mobage ngCoreアプリを起動し、作成したテストアカウントでログインすると、「Sandbox開発支援」メニューの「審査前アプリ一覧」からアップロードしたアプリケーションを起動できます。

また、公開審査申請を行うためには、下部の「Launcher Icon」にてアイコンの登録とApplication Labelの登録をする必要があります。「Launcher Icon」の「Mobage Liteマーク付き」は Google Play (旧 Android Market、以下 Google Play と表記) で配布されるショートカットアプリの為のアイコンとなります。Application LabelはAndroid端末のゲームアイコンの下部につくラベルとなります。この2つの入力を必ずしてください。

さらに公開審査申請を行うために必要な事項として、「Androidアプリ設定」タブから「Market情報編集画面へ」をクリックして、「Android Market情報編集画面」を開きます。

DeNA側で、Google Play に掲載するために必要な情報を登録する画面になります。以下の情報を登録してください

  • スクリーンショット1〜8
    • Google Play に登録するアプリケーションのスクリーンショットを登録します。スクリーンショットは1〜8までありますが、最低限1と2は必須ですので必ずアップロードしてください。3-8は任意になります。
    • 画像解像度は320x480、480x800、480x854、1280x720、1200x800になります。画像は縦向きでも横向きでもアップロードできます。
    • 画像フォーマットは、24ビットPNGまたはJPEG形式(アルファなし)で、フルブリード、枠なしでアップロードしてください。
  • 高解像度アプリケーションアイコン(必須)
    • Google Play に登録する高解像度版のアプリケーションアイコンを登録します。
    • 画像解像度は512x512になります。
    • 画像フォーマットは32ビットPNGまたはJPEG形式です。
    • 画像ファイルのサイズの制限は1024KBになります。
  • プロモーション画像(省略可)
    • Google Play のトップ画面の上部と、Google Play のアプリ詳細画面に使用される画像を登録します
    • 画像解像度は180x120になります。
    • 画像フォーマットは24ビットPNGまたはJPEG形式(アルファなし)で、画像は枠なしでアップロードしてください。
  • 宣伝用画像(省略可)
    • Google Play がPCで表示された時に表示される宣伝用の画像を登録します。
    • 画像解像度は1024x500になります。
    • 画像フォーマットは24ビットPNGまたはJPEG形式(アルファなし)です。画像はミニまたはマイクロサイズにサイズダウンされます。
  • 変更点(省略可)
    • アプリケーションをアップデートした際に追加で記載される文言になります。説明文に更新内容として追加される文章となります。初回は記載する必要はありません。
  • カテゴリ
    • アプリケーションの希望カテゴリです。ここで設定したカテゴリを参考に、弊社にてカテゴリ分けを実施します。アプリの内容によっては指定カテゴリとは異なるカテゴリに分類されることがあります。
  • ウェブサイト
    • ユーザ向けに表示されるウェブサイトのURLです。アプリケーションのご案内ページや、パートナー様のホームページのURLをご指定ください。
この画面で編集できる情報は公開審査申請をしてしまうと、Google Play で公開されるまで編集できませんので、ご注意ください。

これで、Androidアプリの公開審査申請の準備が整いました。

Manifest について

ngCore Android の場合、manifest.json に含ませるリソースの量を 40 MB以内に抑える必要があります。40 MB 以内の manifest.json に含まれるリソースは apk ファイル内に内包され、Goolgle Play 配信版 や Mobage 配信版となります。manifest.json のリソースの容量が 40 MB を超える場合には、 DownloadManifest を使用したセカンダリマニフェストにリソースを移していただけますようお願いします。

iOSアプリの場合

iOSの場合は、「アプリケーション詳細」画面の「iOSアプリ設定」を開きます。

iOSアプリではゲームポイントによる課金機能のために下記の情報を「iOSアプリ設定」画面で入力する必要があります。

  • ゲームポイント Product ID (IAPによるゲームポイント購入の動作確認時に1つ以上の登録必須)
  • ゲームポイント名称(アイテム課金の動作確認時に必須、全角8文字以内)
  • ゲームポイント単位(アイテム課金の動作確認時に必須、全角4文字以内)
  • ゲームポイント注意事項追加文
  • ゲームポイントよくある質問追加文
2013/11/28 より、Tier 1 - 60 の中から、任意の Tier の登録が可能になりました。

アプリケーションはAndroidと同様の手順でアップロードすることができます。
ただし、iOSの場合は、アップロード時のバージョン番号はAppStore上でのアプリケーションのバージョン番号と足並みを揃えるように運用することをお勧めします。

また、appファイルを作成する上で必要なinfo.plistの情報も入力が必要です。

「Info.plist 設定へ」をクリックして「Info.plist 設定」画面を開きます。

  • アイコン画像(iPhone上の表示アイコン)
  • CFBundleIdentifier (アプリケーション固有の識別子。iTunes Connectで設定するBundle IDと同じものを設定します)
  • CFBundleDisplayName(iPhone上の表示名)
  • UIPrerenderedIcon(trueを設定するとアイコンが輝いているエフェクトはなくなります)

以上の必要な設定を行い、Mobage ngCore SDKのランタイムとアプリケーションをパッケージしたSandbox用のappファイルのzipファイルをダウンロードします。

ダウンロードしたzipを解凍し、Mobage ngCore SDKに同梱されているResignツールでappファイルに再署名、実機に転送することで、Sandboxビルドのアプリケーションの動作確認をすることができます。

アプリケーションのアップロード時の考慮点(Android, iOS共通)

アプリケーションのzipダウンロード化の検討

で起動したnodejsを使用すると、画像や音声などのリソースをzip化してビルドすることが可能です。

このオプションを使用することで通信回数と通信データ量を削減でき、アプリケーションのダウンロード時間を短縮することができますのでご検討ください。

アップロードするzipの中にzipがある状態になります。

ソースコードの難読化の検討

manifest.jsonのcodeセクションの代わりにcode_encryptedセクションにJavaScriptファイルを定義するとソース・コードの難読化を行うことができます。

完全にソースコードを暗号化するものではなくあくまで、難読化処理です。

ngCore iOS での高速化について

ngCore 1.6 以下、かつ iOS では combine モードをオフにすると、多少の高速化が見込めます。Android や ngCore 1.7 以上では combine モードをオフによる高速化は見込めませんし、動作が不安定になりますので、必ず combine モードはオンのままでお願いします。
combine モードをオフにする方法は次の2つです。

  • server-nocombineオプションで起動したnodejsを使用する方法
  • ngPackagerを使用し、--combineオプションにfalseを設定する方法

Mobage ngCore SDK ではデフォルトではcombineモードはオンになっていて、JavaScriptのコードが1つのファイル(application.js)へ統合されます。ngCore 1.6 以下、かつ iOS の場合、JavaScript のエンジンで JIT が有効ではないため、関数呼び出しごとに、統合されたファイルの読み込みが行われます。その為、iOS では統合されたファイルの読み込みが関数呼び出しのたびに行われるため、速度が遅くなっております。combine モードをオフの状態にするとファイルの統合が行われず、関数呼び出しごとのファイルの読み込みが最小限になり、高速化が見込めます。
ngCore 1.7 以上の場合は、ngCore 1.6 以下の場合と JavaScript エンジンが異なりますので、JIT が有効になります。

Sandboxから本番切り替え時の環境切り替え

公開審査を通過するとアプリケーションが本番環境に配置されますが、その際にconfiguration.jsonの内容は本番のAPIサーバーへ接続するように自動的に切り替わりますので修正は不要です。

通信先のゲームサーバーを本番環境に切り替えるためには以下のコードを使用して環境を判別し、接続先のURLを切り替える実装を行ってください。本番稼働時はログレベルを上げる等の考慮も必要です。

REST APIをお使いの場合は、ゲームサーバーからアクセスするAPIサーバーの本番とSandboxのEndPointのURLが異なりますのでご注意ください。

ログイン・セッションの長さの違い

Sandboxでは1時間、本番では30日間となります。

更新履歴

  • 2012/02/05
    • 使用可能バージョンの修正および追記
  • 2012/12/28
    • 使用可能バージョンの修正および追記
  • 2012/10/31
    • 使用可能バージョンの追加
  • 2012/10/02
    • Tier の登録について追記と変更
  • 2012/09/24
    • 使用可能バージョンの追加
  • 2012/09/20
    • ngCore Android に 「Manifest について」を追加
  • 2012/07/31
    • Android Market -> Google Play に名称変更
  • 2012/06/15
    • Sandboxポータルアプリの廃止に伴い、修正
  • 2012/06/13
    • ngCore 1.7 Android 本番用に指定できるようになったのに伴ない修正
  • 2012/05/23
    • ngCore 1.7 Android の場合、本番用には指定できない旨を追記
  • 2012/04/25
    • ngCore iOS のCombine=falseに関して追記
  • 2012/01/31
    • In App Billing対応に伴いフローの変更
  • 2011/10/05
    • Android版のSDKバージョンを1.3.1以下に修正
  • 2011/09/28
    • ゲームポイント(IGC)からゲームポイントに名称変更
    • Tierの種類に関する記述を削除
  • 2011/09/26
    • iOS版のSDKバージョンを1.3.1に修正
  • 2011/08/29
    • MobageSDKからMobage ngCore SDK に名称変更
  • 2011/07/29
    • Product IDの設定で設定するTierの種類が増加したため修正
  • 2011/07/28
    • 使用するSDKのバージョンを修正 (iOS 1.1.5.3, Android 1.1.6以下)
  • 2011/06/20
    • 「使用するSDKのバージョン確認」を追記
  • 2011/06/17
    • 「アプリケーションの公開」から分離

PREVIOUS

アプリケーションの設定

NEXT

アプリケーションの公開審査申請