はじめに
先日、Flutterで 「カラオケメモアプリ-うためも」をリリースしました🎉
アプリ開発は初めてで少しハードルが高かったのですが、なんとかアプリ公開まで持っていくことができました。
せっかくなので、Flutter×Firebaseアプリのリリースまでの工程でどのように作っていったのかをまとめたいと思います。
これからアプリを作ろうと思っている方にとって、何かのヒントになれば嬉しいです!
※ 技術的な解説はあまりないので、その点だけご了承ください
⬇️アプリはこちらからインストールできます
App Store: https://apps.apple.com/us/app/id1527778412
Google Play: https://play.google.com/store/apps/details?id=com.taikishiino.uta_memo
うためもの主な機能
① メモ追加機能
自分に合った音域のキーで曲のメモを追加できます。
② メモ編集・削除機能
追加したメモを編集・削除することができます。
③ フォルダ機能
リクエストが多かった「フォルダ機能」を近日機能追加する予定です!
ジャンルによって曲を分けて管理することができるようになります!
※ 近日アップデート予定
なぜ、うためもを作ったのか
最初は、画像加工の技術を使う釣りアプリを作りたくて、Flutterを触り初めましたが、技術難易度がなかなか高く、さらにストアへの公開もやったことがなかったので、アプリ公開までに障壁がいろいろありました。
なので、アプリ公開までの障壁をできる限り取り除くために一旦簡単なアプリをリリースしてみることにしました。
コピペでTODOアプリ作って、リリースしようとしていたある時、
友人とカラオケにいく機会があって、友人がiPhoneのメモアプリに、自分の持ち歌と適性キーをメモしているのを見ました。
(僕はカラオケ苦手なので、持ち歌をメモしようという思考にすらなったことがなかった。。)
それのおかげで、TODOアプリが「カラオケメモアプリ-うためも」に進化したというわけです🎉
開発者によって量産されているTODOアプリも少しアイデアを加えると、簡単にオリジナルアプリになるのでおすすめです!
リリースまでの工程
AppStore, GooglePlay の各ストアへの公開手順を覚えるという目的が強かったので、早い段階で「② AppStore/GooglePlay ストアへ申請」に時間を当てることを最優先にしています。
① ひとまず、動くものを作る
言語仕様・フレームワーク・状態管理の理解はひとまずすべて後回しにして、最低限動くものを作ります。
公式ドキュメントで環境構築して、YouTubeで開発の仕方の雰囲気掴んで、Web記事のソースコードコピペという最低限で良いと思います。
- Flutter公式ドキュメント(Install)
https://flutter.dev/docs/get-started/install - YouTube(Flutter & Firebase App Tutorial)
https://www.youtube.com/watch?v=sfA3NWDBPZ4&list=PL4cUxeGkcC9j--TKIdkb3ISfRbJeJYQwC - Flutterで始めるアプリ開発
https://www.flutter-study.dev/introduction/about-flutter
② AppStore/GooglePlay ストアへ申請
まず、AppStore/GooglePlayの開発者登録をします。お金がかかります。iOSは年会費US$100もします。。
各ストアの開発者登録ができたら、ビルドしてリリース申請を出す流れになるので、ドキュメントなどをみて進めていきます。
- 公式ドキュメント(Build and release an Android app)
https://flutter.dev/docs/deployment/android#publishing-to-the-google-play-store - 公式ドキュメント(Build and release an iOS app)
https://flutter.dev/docs/deployment/ios - Flutterアプリ公開の最後のほうにやったこと
https://note.com/iiinaiii/n/nf8c54dc56da1#QDccT
③ ユーザーに提供できるクオリティに仕上げていく
アプリの申請が出せたら、ここで初めて言語仕様・フレームワーク・状態管理などを理解をしていきます。 もうアプリは公開できたも同然なので楽な気持ちで進めていけます。
不具合の修正、ソースコードのリファクタ、状態管理の最適化など行っていく中で技術をキャッチアップしていく感じです。
最後に
アプリ開発は少しハードルが高いイメージがありましたが、簡単なアプリなら比較的時間がかからずにアプリ公開までできると感じました。
この記事では、技術的な解説はあまりなく逆に精神論的な解説にもなってしまったため、参考にはならなかった方には申し訳ないです。。
個人開発は、自分の一番楽しい方法で進められるのが一番のメリットかと思いますので、一度やってみてはいかがでしょうか。