アプリの実装をある程度行った後の公開までの作業について、私が行った作業です。

現在までにリリースしているアプリはアプリ内課金がありませんので、課金アリのアプリについての情報はありません。

アプリアイコン

proj.android/res/drawable-xxx/icon.pngを上書き更新してください。

フォルダ名 アイコンサイズ dpi
drawable-xxhdpi 144x144 480
drawable-xhdpi 96x96 320
drawable-hdpi 72x72 240
drawable-mdpi 48x48 160
drawable-ldpi 32x32 120

cocosコマンドでプロジェクトを作成した場合drawable-xxhdpiは用意されていませんが、新しい端末用にディレクトリごと作っておきます。

詳細は以下を参考にいたしました。

Android,iOSアプリ用画像リソースとアイコンサイズのまとめ
http://www.webtech.co.jp/blog/optpix_labs/6915/

オリジナルのアイコンを目にすると「 これが俺のアプリだー 」というやる気アップになりますので、開発初期からアプリアイコンを変更しておくのが私のおすすめです。

アプリ名

端末に表示されるアプリ名を指定します。
proj.android/res/values/strings.xmlを編集してください。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">AppName</string>
</resources>

バージョン/バージョンコード

AndroidManifest.xmlに定義します。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.appName"
    android:versionCode="1"
    android:versionName="1.0.0"
    android:installLocation="auto">

GooglePlayのDeveloper Consoleにapkをアップしますと、次回以降同じバージョンを指定することができなくなりますので、ビルド前にバージョンを更新するようにしてください。

著名とkeystore

keystoreの作成

GooglePlayでアプリを公開するために、証明書を作成してアプリに著名を行う必要があります。

この証明書がkeystoreと呼ばれるものですね。
Java JDKに付属するkeytoolを使ってkeystoreを作成します。
JDKはcocos2d-xの開発環境構築時点でJDKをインストールしていると思います。

コマンドは以下です。

$ keytool -genkey -v -keystore XXX.keystore -alias XXX -keyalg RSA -validity 10000

※有効期限は10000日です。 また、XXXを任意の文字列に書き換えてくださいね。

対話形式で必要項目を入力していきます。 予めタイプする内容を考えておきましょう。

入力項目は以下です。

  • キーストアのパスワード
  • 姓名
  • 組織単位(組織の部署名など)
  • 組織名
  • 都市名または地域名
  • 州名または地方名
  • この単位に該当する 2 文字の国番号(日本はjp)

作成が完了すると.keystoreファイルが作成されますので、アプリのビルド時に使用します。

keystoreの作成は以下を参考にいたしました。

ANDROIDMARKETに公開するためにアプリに署名を行う
http://techbooster.org/android/environment/1445/


WindowsでJDKをC:\Program Files以下にインストールしていると、keystoreの作成がちょっと面倒になりますね。
私はパスを通すのが手間だったため、コマンドプロンプトでJDKをインストールしたディレクトリまで移動して証明書を作成しました。
この際、管理者でコマンドプロンプトを開くのがポイントです。

アプリに著名する

IDEからアプリに著名する方法もあるようですが、私はandのプロパティを設定し、リリースビルド時に自動で著名を行うようにしました。

proj.android/ant.properties

key.store=/path/to/XXX.keystore
key.store.password=keystore_passowrd
key.alias=XXX
key.alias.password=keystore_passowrd

リリースビルド

build_native.pyに引数を指定する方法を取りました。

cd /path/to/project/proj.android
build_native.py -b release

cocosコマンドを利用する方法などもあるようですが、うまくいきませんでした。
アプリ内課金を行っている場合にはこの方法が使えないかもしれません。

FPS表示を消す

Classes/AppDelegate.cppをsetDisplayStats(false)に修正してください。

// turn on display FPS
director->setDisplayStats(false);

リリースビルドを行うと自動的にFPSが非表示になると思ってましたが、プログラム上でしっかり指定されていました。

私は、こちらの作業を忘れて某アプリを公開してしまい、バージョンアップする羽目になってしまいました。 明らかにリリースビルドでのデバッグ不足ですね。。。

「デバッグビルドでtrue、リリースビルドでfalse」になるよう分岐を作っておくとベターです。

GooglePlayに掲載する画像、原稿を用意する

著名付のapkを作成したらDeveloper Consoleにアップしましょう。

Developer Consoleで「すべてのアプリ」を開き、画面右上にある+ 新しいアプリを追加をクリックします。

アプリ追加フォームが開きますので、はじめにアプリタイトルを入力しましょう。

こちらはapkの管理画面です。 こちらからapkをアップロードしてください。

こちらはストアの掲載情報管理画面です。

項目数が多いため、画像と原稿を用意するにも時間がかかります。
必須の項目は以下です。

項目 説明
タイトル アプリのタイトル、30文字
簡単な説明 アプリ概要、80文字
詳細な説明 アプリの詳細説明、4000文字
スクリーンショット 最低2枚、フォーマットはjpeg/24ビットPNG、サイズは1辺が最低320~最大3840
アイコン フォーマット32ビットPNG、サイズは512x512
宣伝用画像 フォーマットはjpeg/24ビットPNG、サイズはw1,024 x h500
アプリのタイプ アプリ or ゲームを選択します
カテゴリ タイプに紐づくカテゴリを選択します
コンテンツレーティング レーティングを指定します
新しいコンテンツレーティング 質問表に回答することでレーティングが自動算出されます
メール 開発者のメールアドレスを入力します、これは公開情報です
プライバシーポリシー URLを別途用意してプライバシーポリシーを明記します。こちらは省略可能

不足があるとアプリが公開できません。 画面右上に 公開できない理由 というリンクがあり、こちらから残作業が確認できるので、作業で迷うことは少なかったです。

ストアの登録について

私はカテゴリをアバウトに突けてしまいましたが、カテゴリによってもユーザの関心に差があることは注意したほうがよさそうです。

また、 レーティングが不適切だといろいろとトラブルに発展 しますので、ここは正直に登録してください。
レーティングは強化される傾向にあると感じますので、企画段階からまっとうな企画を考えることが吉ではないでしょうか。


アプリの宣伝

ストアにアップするだけでDLが伸びる、ということはなく、やはりある程度の宣伝が必要なのだと感じます。 ※企画が良ければレビューしてもらえるアプリもありますが、稀だと感じます。

私も、某アプリがまったく注目されない状態が続きましたので、いくつかフリーのアプリ紹介サイトさんにレビューを依頼しました。


手軽に登録できるのが「個人の開発者ならだれでも登録できる」放課後アプリ部さんです。
私も登録してみましたので、ぜひご覧ください。

放課後アプリ部

放課後アプリ部さんのTapHannyaShinngyo紹介ページ