こんにちは、@Yoshimiです。
やっと人生で初のAndroidアプリリリースをすることができました。というか、関わっていたというのが正しいかもしれませんが・・・私はアプリ開発会社所属、アプリ専門エンジニアでもないので、公開までの手順や詰まったことなどをまとめておこうと思います。
今後、Androidアプリを公開するエンジニアの力になれば幸いです!!!
目次
開発したAndroidアプリ概要
今回開発したアプリはAI株価予測アプリ「MOUKARE」というアプリです。
特徴
- Googleのtensorflowを利用
- 深層学習の分野において用いられる人工回帰型ニューラルネットワークアーキテクチャを利用
- 予測結果(成果率)、最大93%を達成
- 株価を当てに行くのではなく、株価が上がるのか下がるのかを判定
お金が欲しいと思っている全世界の人にアプローチできると思って作ってみました。私も機械学習、データ分析、データサイエンティストとして業務に携わることも多く、せっかくであればアプリを開発しようというのがチームの始まりです。
体制は、企画品質管理1名、機械学習エンジニア2名、フロントエンド開発者1名、デバッガー2名の5名です。私は、機械学習のモデルを作成するもののどうやってAndroidアプリ化するの?Pythonで全部できるの?Java必要なの?レベルからのスタートです。
結局、Python部分は予測モデルの検証、データ加工に利用し、アプリ化はAndroid Studioを使うということで解決です。
開発スケジュール感
N月:企画・構成を考える
どんなデータがあるのか?どんなデータが使えるのか?を考えていました。また、サクッと予測してもらうには、その場で処理させるのでは遅いので、事前に計算を行い、モデル作成し、そのモデルを利用し、予測結果を返すもの。株価は時系列データなのでLSTMを利用し、ちょうせいしてごにょごにょ・・・で最適であろうモデルを作成していきます。
特徴量として、株価情報に参考される、ROIや出来高なども考慮。でも、使うか使わないかはAIエンジニア次第ですけどね。
N+1月〜N+3月:モデル作成・検証
方向性も決まったのでモデル作成です。
東証だけでも3,500以上の銘柄があるので最適なモデルを作成するのもめっちゃ大変です。ただの数値データだけではなく、株情報サイトに記載されている会社情報を利用し、クラスタリングし、その関係性を確認したりと高い精度を出すには多くの検討事項がありました。
その度に、3,500以上の銘柄の予測を行い、一番良いモデルを選びます。
ただ、今後のことを考えると汎用性の高いモデルにすべきではあるということもあり、矛盾がさらに開発を遅らせる要因にはなっていたといえます。
N+4月:リリース
後述しますが、リリースも初だったので、Google Play consoleで手間取ったことは確かです。
Android アプリ公開までの手順
Google Play consoleへ登録する
- https://play.google.com/console/にアクセスして、デベロッパーアカウントを作成
- 利用規約に同意する
- 登録料の支払い
- アカウントの詳細入力
デベロッパー登録には$25がかかります。クレジットカードのみの支払いになるのでご注意ください。
登録作業推奨環境のブラウザはGoogle Chromeとなっています。
アプリを新規登録する
「アプリ作成」から新規アプリの登録を行います。
どんなアプリなのかの概要を登録します。デフォルトの言語はUSになっているの、日本語にすることをお勧めします。なぜならばターゲットは日本だからです。
そして、「無料 / 有料」の設定です。個人でアプリを開発する場合、ほとんどの場合、無料を選択すると思います。企業もいまは無料等力でガチャといったアプリない課金が主になると思います。
Google Play consoleでの表示を決める
メインのストアの掲載情報を編集します。Google Playのアプリ掲載ページに掲載されるアプリ紹介です。
- アプリ名
- アプリの概要
- アプリの詳細説明
- スマホ、PC、タブレットでのGooglePlayStoreでのキャプチャー
「スマホ、PC、タブレットでのGooglePlayStoreでのキャプチャー」はすべて同じ画像でもOKです。私は、用意することができなかった(編集ソフトを持っていなかった)ので、スマホでキャプチャーした画像を全て利用しました。(女子力無さすぎを指摘されました♪)
アプリの価格を無料か有料に決定する
今回、私たちのチームは有料にすることを決めていました。理由は以下の通りです。
- 次回作の開発費用も稼がねばならない
- Googleのtensorflowを利用した機械学習モデルには自信がある
- ゲームではないのでアプリない課金をさせる特別なコンテンツが見当たらない
アプリの告知として、セールを打ち出すことができるのです!詳しくはアプリの価格を設定するをご確認ください。
プロモーションの一環で初回無料で公開し、認知度が高くなってきたら、正規価格にしようと考えていましたが、
なんと、無料から有料への変更はできないと記載があるではないですか!!!
危うく永遠に無料で配信するところでした。
テスト公開または、いきなり公開
アプリの公開には、事前登録、世界のユーザーにテストをしてもらうなどいろいろなサポートがあります。でバックしてもらいフィードバックもあるという手厚いサポートです。しかし、開発段階でデバックは必ず行うものなので、あえてこの段階で行わなくても良いと思います。
アプリ情報、無料・有料の価格設定、apkファイルが揃っていれば、公開準備は完了です。
公開を行うにあたり、Google審査があります。私たちは5営業日ぐらいかかりました。通知はきていた?のかわかりませんが、いきなりストアにあっぷされていました!
セール設定してアピールしよう!
購入系アプリはセールを行って、まずはユーザーを獲得するというのもマーケティングの手法だと思っています。GooglePlayの価格設定方法で注意することは価格テンプレートです。
販売と価格設定テンプレート
各セールはアプリ単位で作成するため、セールで価格設定テンプレートを使用することはできません。
テンプレートに登録したアプリのセールを作成した場合は、セールを中止するか、セールが完了するまで、テンプレートに変更を加えることはできません。
とあるので、個別に販売価格を設定して、セールを行う必要があるようです。
私はテンプレートで価格設定を行なっていたことがわかり、テンプレートを削除して、個別に販売価格を設定し、セールを再設定する。という手順を行いました。
最後に
研究開発には目に見えない人的工数は結構かかりました。フルではないとはいえ5名が稼働しており、研究対象のアプリ開発ということで、数学者として精度が納得いかない、エンジニアとしてもっと綺麗なソースがかける、PMとしてマーケティング施策どうするのか?などそれぞれの思い入れが目に見えない費用としてあったという点です。開発費用として150万円くらいはかかっているのかなと思っています。
次回、サブスク化、投資助言業への登録(500万円の供託金!!が必要・・・めちゃ高い)を目指していきます。ですので、このブログに着地した皆さん・・・ぜひ、アプリの購入お願いします!!