読者です 読者をやめる 読者になる 読者になる

Xamarin 日本語情報

Xamarin(ザマリン) の代理店だったエクセルソフト田淵のブログです。主に Xamarin に関するエントリーをアップしていきます。(なるべく正しい有益な情報を掲載していきたいと考えていますが、このブログのエントリーは所属組織の公式見解ではありませんのでご注意ください)

Xamarin.Forms の Android アプリを Google Play にリリースしてみた

こんにちは。エクセルソフトの田淵です。

Windows Phone非公式アプリコンテスト - おでコン 用に作成した IT勉強会検索 (Windows Phone 版) ですが、当然 Xamarin.Forms で作成しているので iOS/Android にも展開できます。(iOS Developer Program は個人でも 11,800円掛かるのでちょっと躊躇していますが、加入する予定です。)

IT勉強会検索 (Android 版) はこちらです。興味があれば使ってみていただき、フィードバックとか頂けると嬉しいです♪

本エントリーは 2015/8/31 時点での情報です。時間が経過すると価格や画面が変わっている可能性があります。

Google Developer Program への登録

Google Developer Program は $25 でしたのでさっくり加入して、登録処理を行いました。

支払いが完了すると Google Play Developer Console にアクセス出来て、右上の 新しいアプリを追加 でアプリ名を予約(?)できます。

f:id:ytabuchi:20150831121818p:plain:w300

f:id:ytabuchi:20150831122247p:plain:w300

APK をアップするか、ストア情報を掲載します。

ストアの掲載情報を準備

私は先にストアの情報を入力していきました。必須の情報がそこそこありました。以下は必須情報です。

アプリ情報

  • タイトル (30 文字)
  • 簡単な説明 (80 文字)
  • 詳細な説明 (4000 文字)

画像

アプリの分類情報

  • タイプ (アプリ or ゲーム)
  • カテゴリ
  • コンテンツレーティング

連絡先情報

  • メール
  • プライバシーポリシー (URL)

です。どのストアでもそうですが、掲載用の画像を沢山用意しないといけないのが面倒ですね。ちゃんとプロモーションしたい場合は、

  • プロモーション画像 (横 180 x 縦 120)
  • テレビバナー (横 320 x 縦 180)
  • プロモーション動画 (Youtube)

と、スクリーンショットを用意しておきましょう。最近はスクリーンショットに説明を追加しているアプリが多い感じがします。(LINE の例)
f:id:ytabuchi:20150831123919p:plain:w300
プロモーション動画をアップすると恐らく「宣伝用画像」の代わりに表示されます。

APK アップロード

APK は適切にビルドした Release ビルドでもアップロードできません。自分の keystore ファイルで署名する必要があります。

※因みにですが、Android プロジェクトのプロパティの Android Manifest タブで Package Name がファイル名の元になりますが、com.example.AppNameドメイン名を逆にして最後にアプリ名にしないとアップロード時に弾かれた気がします。また、Version Number は整数でないといけなくて、Version name が実際に Google Play Store で表示されるバージョンになります。
f:id:ytabuchi:20150831151325p:plain:w300

keystore の作り方

最初に keystore を作りましょう。コマンドプロンプト/コンソールを立てて、以下のコマンドを実行します。

keytool -genkey -v -keystore SAMPLE.keystore -alias SAMPLE -keyalg RSA -keysize 2048 -validity 10000

SAMPLE は自分の keystore 名に書き換えてください。そのまま以下の設問に答えていきます。

キーストアのパスワードを入力してください:
XXXXXX
姓名を入力してください。
  [Unknown]:  Yoshito Tabuchi
組織単位名を入力してください。
  [Unknown]:
組織名を入力してください。
  [Unknown]: 
都市名または地域名を入力してください。
  [Unknown]:  Ota-ku
都道府県名を入力してください。
  [Unknown]:  Tokyo
この単位に該当する2文字の国コードを入力してください。
  [Unknown]:  JP
CN=Yoshito Tabuchi, OU=Unknown, O=Unknown, L=Ota-ku, ST=Tokyo, C=JPでよろしいですか。
  [いいえ]: はい

よろしいですか?の答えは日本語で はい と入力しないとダメでしたw 間違えた場合は最後でそのまま Enter キーを押して間違えたところを再入力してください。入力済みの項目は [Unknown] ではなく [Yoshito Tabuchi] などと記録されていますので、修正するだけで大丈夫です。

最後に

10,000日間有効な2,048ビットのRSAの鍵ペアと自己署名型証明書(SHA256withRSA)を生成しています
        ディレクトリ名: CN=Yoshito Tabuchi, OU=Unknown, O=Unknown, L=Ota-ku, ST=Tokyo, C=JP
の鍵パスワードを入力してください
        (キーストアのパスワードと同じ場合はRETURNを押してください):

と聞かれますので、別のパスワードを入力するか Enter を押しましょう。

コマンドを叩いたディレクトリに keystore ファイル が作成されます。

アプリを署名する

作成した keystore ファイルでアプリを署名しましょう。Windows(Visual Studio), Mac(Xamarin Studio) どちらも GUIツールが用意されています。ありがたいですね!

WindowsVisual Studio を使用している場合

Visual Studio のメニューから 「ツール>Android>Publish Android App...」 を選択します。
f:id:ytabuchi:20150831150433p:plain:w300

keystore を選択するダイアログが表示されるので、作成した keystore ファイルを指定して Next をクリック
f:id:ytabuchi:20150831150616p:plain:w300

ファイルを保存する場所とファイル名を選択するダイアログが出てくるのでそのまま Publish をクリック
f:id:ytabuchi:20150831150727p:plain:w300

Android プロジェクトのルートに アプリ名-Aligned.apk が作成されます。
f:id:ytabuchi:20150831150937p:plain:w300

後はこの APK を Google Developer Console でドラッグ&ドロップすれば OK です。
f:id:ytabuchi:20150831153655p:plain:w300
f:id:ytabuchi:20150831151049p:plain:w300

Mac で Xamarin Studio を使用している場合

基本的な流れは一緒です。

Android プロジェクトを Release ビルドして、メニューから 「ビルド>Archive for Publising」 を選択します。
f:id:ytabuchi:20150831153919p:plain:w300

次のような画面が開きますので、右下の Sign and Distribute... を選択します。
f:id:ytabuchi:20150831154251p:plain:w300

Ad-HocGoogle Play がありますが、Ad-Hoc が上記 Visual Studio の手順と同じ流れですので、今回はこちらで行います。(Google Play は後述します)
f:id:ytabuchi:20150831154427p:plain:w300

keystore を選択するダイアログが表示されます。Mac で keystore を作成していれば既に表示されているかもしれません。今回は Windows で作成した keystore をコピーしてインポートしました。
f:id:ytabuchi:20150831154724p:plain:w300

keystore を選択して Next をクリックすると次の画面が表示されて、Publish の準備が整います。Publish をクリックします。
f:id:ytabuchi:20150831154831p:plain:w300

同様にフォルダ選択のダイアログが表示されますので、任意の場所に apk ファイルを生成してください。
f:id:ytabuchi:20150831154924p:plain:w300

終了です。作成された APK を Google Developer Console でアップロードしてください。 f:id:ytabuchi:20150831154937p:plain:w300

Google Play (余談)

最初に Ad-Hoc ではなく Google Play を選択すると、直接 APK をアップロードできるようです。ただし、Google Play Developer Account の API キーなどが必要で、かつ、このダイアログでコピペが出来ませんでした!!!!
f:id:ytabuchi:20150831160119p:plain:w300

取得した OAuth Client ID。長い…!!!これを手打ちだと…ッ!!?
f:id:ytabuchi:20150831160432p:plain:w300

間違っとるやないかーーい!!!!wwww
f:id:ytabuchi:20150831160518p:plain:w300

ということで、今回は Google Play は諦めましたw すみません。手動でアップロードしましょうw

おめでとうございます!

これで後は Google さんの「ほんの少しの」承認処理を待ってアプリが公開されます。楽しみですね!

公開されてしばらくたつとダウンロード数とかクラッシュ情報とか色々なデータを見ることが出来ます。(画面写真をそのまま公開して良いか分からなかったので数の部分だけぼかしました。)
f:id:ytabuchi:20150831161140p:plain:w300

Xamarin 気になった方は

是非 ダウンロード(直接) / ダウンロード(弊社経由) して触ってみてください。 学習用リソースJXUG リンクページ に参考資料を纏めてますので併せてどうぞ。

Xamarin の情報が欲しい方はこのブログも購読いただいたりすると嬉しいです。

以上です。