勉強の一環として個人アプリ開発がおすすめという話です(LT用資料も兼ねてます)
みなさんどうやって勉強していますか?
- 技術書を読む
- 技術記事を読む
- リファレンスを読む
- サンプルコードを写経
- OSSを読む
- OSSにコントリビュート
- 個人アプリ開発
- etc...
個人アプリ開発のメリット
- Android、Kotlinの勉強になる
- 業務でまだ使っていない最新技術やOSSを試せる
- インストール数が増えるとモチベがあがる
- レビューなどでフィードバックがもらえる
- 小銭を稼ぐこともできる
アプリリリースまでの大まかな流れ
- 準備
- テーマ決め
- 機能洗い出し
- 技術調査
- UI設計
- 実装
- プロトタイプ作り
- 通信部分など実装
- リリース
- アイコン作り
- ストア画像作り
- アプリ署名
準備
テーマ決め(アプリアイデア探し)
- 普段からPlay Storeのランキングを見る
- 周りの人に困ってることを聞く
- Webにはあるけどアプリにないものを探す
- iOSにはあるけどAndroidにないものを探す
- 自分が課題に感じてること
機能洗い出し
- まずは機能を列挙する
- 必須機能とそうでない機能に分ける
- デザインやアニメーションも機能として考える
- 洗い出せたら優先順位をつける
技術調査
- 必須機能の実装方法を調べて工数概算する
- 実装工数によっては機能の優先順位を変える
UI設計
- 作ろうとしているものと似たアプリを使い倒す
- 紙に書いてみる(ペーパープロトタイピング)
- (可能であれば)他の人にレビューしてもらう
- ペーパープロトタイピングの印刷用テンプレート
- ペーパープロトタイピングアプリ
実装
- 画面作り
- まずは画面を作ってモチベを上げる
- 使ったことのない新機能の場合はリファレンスを見つつサンプルコードをコピペしていじってみる
- 通信部分など実装
- 最初はスタブを使ってとりあえず動くものを作ってから置き換える
リリース
開発者登録
- もしアプリをリリースしたことがなければPlay Storeへの開発者登録が必要です。
- 25ドルかかります。(初回のみ)
- (参考) [Play Console の使用方法 - Play Console ヘルプ]
(https://support.google.com/googleplay/android-developer/answer/6112435?hl=ja)
アイコン作り
- ちゃんと作るならフォトショなどの画像編集ツールで高解像度のアイコンを作ってそれを画面解像度毎にリサイズするといいです。
- 一括リサイズは https://araishi.com/icon-resize/ を利用させていただいています。
- お手軽に済ませたいならAndroid Studioの
File -> New -> Image Asset
で作成できます。
ストア画像作り
- 画像編集ソフトで頑張って作る(個人的にはGoogle Slidesがおすすめ)
- 端末はめ込み画像はDevice Art Generatorで簡単に作れます。
アプリに署名する
-
Build -> Generate Signed APK
からKey Storeを作って署名します。 - (参考) [アプリの署名 | Android Studio]
(https://developer.android.com/studio/publish/app-signing.html?hl=ja) - (参考) Google Play App Signingのススメ - Qiita
リリース後
グロース
- メジャーなものは競合が強いのでインストールされない
- ニッチすぎてもインストールされない
- クオリティが低いとアンインストールされやすい
- 色々アプリを作ってみて伸びそうなアプリに注力する
日本市場がメインならiOSの方がいいかも(2017年時点でiOSユーザーが7割くらいらしい)
世界 | 日本 |
---|---|
(引用)https://xera.jp/entry/iphone-android-share
少し困ったこと
- 個人アプリ開発以外の趣味の時間が減る
- 楽しくて睡眠時間が減るときがある
- 気がついたら土日が過ぎて月曜になってて少し憂鬱な気分になる
- (会社を休んでまで個人アプリ開発したくなる)
個人的に今後やりたいこと
- iOS
- React Native, Xamarin
- AR, VR
- TensorFlow Lite
まとめ
- 個人アプリ開発は良い勉強になる
- 業務に活きることが多い
- 多少は小銭が稼げる
補足
自分はこんなやり方でやってるよ!とかこんなツールあるよ!などあれば教えていただけると嬉しいです。
最初はUI設計などのリリースするために最低限必要もの以外は飛ばしてとりあえずリリースしてみるでもいいかと思います。(モチベがあるうちにやりきるのも大事)
参考
Device Art Generator | Android Developers
https://developer.android.com/distribute/marketing-tools/device-art-generator.html?hl=ja
【Android】Google Play App Signingのススメ - Qiita
http://qiita.com/rkowase/items/90cdc4e8c6fc449d8276