概要
2023年1月1日に、はじめて個人アプリをリリースしたので
開発からリリースまで苦労だらけだったので
同じようなところに苦戦するような人がいたり、参考になれば嬉しいです。
今回は全体感の話なので細かいところは別記事で追記していこうと思います。
なぜ個人アプリを作ろうと思ったのか
コロナで1週間何もせず寝込んでいた時に
よく使っていたアプリ自体の更新が止まっていて不便な思いをしたので
自分で新しいアプリを作ろうと思ったのがキッカケ
どういうアプリを作りたかったのか
FF14のまとめ記事と動画などを検索せずに見れるアプリ
最新情報が探しづらいし情報が古かったりするから最新情報だけ欲しいアプリを目指す。
バックエンド AWS開発編 (試しながら1〜2週間)
バックエンドは全く知識がない状態からのスタートでAWSを採用。
当初の設計
AWS採用サービス:Lambda, RDS, API Gateway
1. node.jsのLambda関数を作成し、インターネット経由でrssデータを入手してRDS(DB)に保存する
2. API GatewayでRDS経由でデータを整形してjsonを返す
上記の設計は挫折。
- インターネットを許可した状態のLambda関数でRDSへのアクセスが簡単にできなかった
- RDSの無料の枠を超えそうだった(そんなに使ってないと思うのになぜ・・)
設計の見直し
AWS採用サービス:Lambda, S3, API Gateway
1. node.jsのLambda関数を作成し、インターネット経由でrssデータを入手してS3(json)に保存する
2. API GatewayでS3経由でjsonを返す
S3であればjsonを直接書き込んで保存して参照するだけでできた!
(開発の内容に関しての記事は別記事予定)
iOSアプリ開発編 (4〜5日)
- タブで切り替えられてサクサクアクセスできるシンプルなアプリ
- ダークモード対応は自身が開発したことなかったので絶対やりたかった
- アプリアイコン作成
- AppStore用のスクリーンショット作成
iOSアプリ採用技術
- SwiftUI
- SFSafariViewController (WKWebviewめちゃ遅かったため・・)
- AWS SDK
- Google AdMob
- Firebase Analytics
- Firebase Messaging
iOSアプリ審査通らない編 (2週間)
レビューに出すも厳しい審査を乗り越えた話(別途記事予定)
レビュー指摘! このリジェクトで震える開発者がいるようだ・・
4.2 Minimum Functionality でリジェクト
https://developer.apple.com/jp/app-store/review/guidelines/
初期の機能
- AWSからjson取得してニュース記事、動画一覧をリスト表示してリスト選択でwebview表示する
確かにアプリとしてはクソと言われたらそうなんだけど
バックエンドで情報を集約ことに1番の意味があり、アプリの機能を言われてもな・・
審査通すためにやったこと
Webで検索して同じ境遇の方々の知恵を拝借して何度もトライ
・アプリがユーザーに対してこんな嬉しいことがあるよアピール
→ ダメ (ガイドライン4.2.2の指摘)
・ローカルプッシュ対応
→ ダメ (ガイドライン4.2.2の指摘)
・お気に入り
→ ダメ (ガイドライン4.2の指摘)
・絞り込み機能
→ ダメ (ガイドライン4.2の指摘。まだまだ足りないと言われた。足せばいけるのか?)
・シェアボタン、閲覧履歴、リモートプッシュ
→ 成功(一気に3機能足したら審査通った!!)
結局機能を追加しないとダメそうだった
レビューが1日1回で戻されるたびにへこむ日々が続いたけど
でも結果としてアプリとして良くなった気がする・・!
あとがき
それぞれの開発のポイントは別の記事で書いていこうと思います。
開発したアプリ