飴屋

Androidアプリ/日記16

アプリを公開する前に

さて、これまで作ってきた体重管理アプリですが、機能的に十分とは言えませんが、アプリとして建前を保つ必要な機能が揃ってきました。せっかくなので、アプリを公開するところまでやってみたいと思います。実際に公開する段にはもうちょっと機能的な部分にも手が加わるとは思いますが、それ以外の公開のための要件を調べて対応していきましょう。

とりあえず、目標はAndroid公式のマーケットに出すことですが、最近、AmazonからAndroidアプリストア出店というニュースが聞こえてきました。また、DocomoもXperiaの販売以降、独自のアプリストアを展開していると聞きました。こういったサードパーティ製のアプリストアが林立するあたりが良かれ悪しかれiPhoneとは異なるポイントだと思います。ユニークなアプリストアが、ユーザにとってアプリ購買の意欲をそそるものであることに期待したいです。

バージョン設定

「アプリを公開する」というイベントは一度しか起こらないわけではありません。機能を追加したり、不具合を修正したり、アプリは開発者の意欲に応じてアップグレードします。アプリストアでは、そんなアプリの更新状況をユーザに通知する仕組みが必要になります。そこでアプリの「バージョン」を明示することが重要となるわけです。

AndroidManifest.xmlには、Manifest要素にandroid:versionCodeとandroid:versionNameの二つのバージョンに関する属性を設定できます。前者がバージョンの更新状況を示す数字で、アップデートする度に整数値を増やしていかなければならないそうです。後者はユーザに明示するバージョン情報なので基本的に自由につけられますが、人に見せる情報ですからわかりやすいに越したことはないと思います。

(2020/7/24追記)今はバージョン番号をAndroidManifest.xmlではなくbuild.gradleファイルで設定しています。

ユニークな要素

自分のアプリがその他のアプリと違うことを示す必要がありますが、公開前に設定が必要な情報としてはラベルとアイコンが挙げられます。ラベルはアプリの名前みたいなものですね。アイコンはアプリの内容を端的に示す画像が望ましいと思います。

<application android:icon="@drawable/icon" android:label="@string/app_name" android:debuggable="true">
</application>

AndroidManifest.xmlのapplication要素内はこんな感じで設定されていました。アイコンの中身は48ピクセル四方の透過PNGファイルだそうです。もしも、ユーザのデスクトップにショートカットが置かれるようにでもなれば、このアイコンが何度もユーザの目に留まるわけです。たくさんあるショートカットの中でも、このアプリの存在を示すようなものを作った方がいいのでしょうね。iPhoneアプリなんかだとアイコンをすごく大事にするなんて話も聞いたことがあります。おしゃれじゃないアイコンは待ち受け画面に置きたくないとかなんとか。

また、アプリの名前にもあたるラベルももう一度ユニークな名称を模索するのがよい気がしてきました。私はドラゴンクエスト開始時に主人公の名前を余裕で数時間悩み続けられるタイプなので、この作業は後回しにしてきましたが、WeightManagerという名称を返上するなら今です。

ふとみるとandroid:debuggableなんていう属性値もついてました。そういえば実機でテストを行う時に必要だったのでつけた気がします。これは公開時には外さないといけないでしょうね。

OSの選択

<uses-sdk android:minSdkVersion="8" />

AndroidManifest.xmlにはandroid:minSdkVersionなんていう要素も発見されました。これはユーザの端末のAndroid OSに必要な機能をSDKのバージョンで示しているものですね。HTC DesireをAndroid2.2にアップグレードして開発している私はSDK番号に8をつけてありますが、下位互換性があるアプリならこの番号を下げて古いOS向けにもリリースが可能になるのでしょう。私はAndroid開発歴が短いので、SDKによる機能の違いの変遷にうといのですが、下位互換性を保つような開発手法には興味があります。日本では、OS1.6のユーザもまだいそうです。Xperiaのユーザさんがみんな2.1になったとも限りません。
逆に2.3が載った端末も年内にどんどんリリースされるでしょうし、後ろも前も両方眺めていかないとすぐに置いていかれそうですね。

アプリに署名

公開するアプリには適切な署名が必要だそうです。どこかの証明機関から署名をもらうような手続きだったら嫌だなと思ったのですが、自分の開発環境で完結するものだそうです。今はEclipse上で署名作業を行えるとのことなので、「Android Tool」→「Export signed Application Package」からアプリのパッケージングを行ってみることにします。
ここでダイアログが立ちあがって、先ほどのandroid:debuggableがtrueになっていた件で早速アラートが出ていました。気がきいてます。

証明書をまだ作ったことがなかったので、証明書の保存場所とパスワードを尋ねられました。それから証明書の有効期間だとか所属だとかいろいろ回答を求められました。省略できるところもたくさんありますが、一応埋めておきます。サーバ証明書をもらうときと書式は一緒みたいなので、同じような仕組みを持っているのでしょうね。

最後に保存場所を聞かれて出力が完了です。署名されたアプリのパッケージができあがりました。これを使ってマーケットに公開するわけですね。公開前にもう一度アプリの内容を確認して、ブラッシュアップしておきましょう。

多言語化

せっかく多言語化の仕組みがあるので、英語と日本語用のリソースぐらい用意してみたいと思います。こういったことも公開前のチェック事項といえそうです。

日記一覧