App storeでiOSアプリを公開するまでにやったこと
iOSアプリを作りました
制限時間内に素因数分解をしていくゲームです
この記事の目的
- 備忘録、やったことの復習
- iPhoneのゲームを作ろうと思っている人への参考
アプリの宣伝
1 環境構築
自分のMacにいつの間にか入っていたXCodeを用いる
フレームワークはかなり迷ったがSpriteKitというものを使うことにする
(実はUnityにしておけばよかったなと思うことが少しだけあります)
2 学習
2-1 Swift
Swiftの学習を行う
Web上にも多数の文献があるが、ちまちま参照しているのも勿体無いなと思ったので本を買う
Swiftの文法は特別難解ということはないけど、競技プログラミングしかしない人(ぼくのことです)とかには辛い部分がある
例えばオプショナル型、デリゲートなど
また、本には一般的なiOSアプリの作り方なども参考例とともに詳しく載っていたので買っておいて損はなさそう?
2-2 SpriteKit
ここのチュートリアルがとても優秀SpriteKit Tutorial for Beginners | raywenderlich.com
このサイトがなかったらアプリは完成していなかった
ドキュメントが大量にある
頑張って必要そうなところだけ読みましょう
3 実装
辛いけど頑張る
プログラミング自体よりもUIを考えたりとか画面遷移とか効果音の鳴らし方とか、そういった部分に時間を食われたような記憶がある
Swiftは意外と文献が少ないので(やってはいないけど多分Unityとかと比べると圧倒的に少ない)、大変
4 リリース
アプリをリリースする
ここのリンクが参考になりました
[2018年版] よく分かる!iOSアプリのリリース手順のまとめ | Developers.IO
紹介文とかスクリーンショット、プライバシーポリシーなどが必要となる
結構めんどくさくて放置しがち
審査は一週間くらいかかると聞いていたけど実際には2日くらいだった
5 教訓
- リリースしてすぐにバグが見つかった
当たり前だけどバグはない方が良いとされている
アプリを公開した場合、普通公開した直後が最もインストールされやすいので、公開してすぐにバグがみつかるのはかなり致命的だと思っています
さらにバグを修正しても先述したように審査にはさらに2日くらいを要する、アップデートが反映されるまでにブームが落ち着いてしまうとかなり勿体無い
- 難易度が高すぎた
これは僕が難易度の高いゲームが欲しかったからというのもあるけど、大衆ウケを考えたら難易度を選択できるようにしておけばよかったと感じている
- テストを何人かにしてもらった方が良い
UIの使いづらさとかデザインの見やすさみたいな項目は、製作者には絶対わからない内容なので、公開する前に何人かに遊んでもらって
事前に感想を聞いておいた方がいいなと感じました
- 作る前に仕様書を書くべき
今回は結構適当に思い付きでコードを書いていたので、終わってみればとてもデバッグのしづらいコードになっていました
一旦思考を整理するためにもアプリを作る前にはまず仕様書を書いた方がいいなと感じた
- iPhoneユーザーを意識すべき
僕はiPadしか持っていないのでほとんどのデバッグをiPadでやっていたのですが、アナリティクスによるとほとんどのユーザーはiPhoneを使っていました
そのため、iPhoneで見たときのUIを意識して設計しないといけなかったです