せっかくADP契約しているので、久しぶりにアプリを作りました。(3/16日現在審査中)
今回作成したアプリは、
「なんでもプッシュ通知」
です。(なんでもアラームにしようとしたらすでにありました。)
今回このアプリを作ろうとしたのは、買い物メモをいつもiPhoneのメモ帳に書いてたんですけど、
いつも出かけて帰る頃には忘れてしまうので、いいタイミングでプッシュ通知してかつ買い物メモを同時に見られたらいいなと思ったからです。
本記事では、アプリの概要と技術的なことにも触れようと思います。
アプリの概要

設定項目は以下の通りです。
- アラーム日時:年月日時分まで設定可能
- 通知メッセージ:プッシュ通知に表示するメッセージを設定する
- メモ:通知メッセージ以外にも補足事項などを設定する
アラームを追加ボタンを押すと下の領域に追加されていきますが、カードを右から左にすワイプすることで「delete」ボタンが出現しタップすることでアラームを削除できます。
今日も無事に朝出かける前に設定して、帰り際にシャンプー買えました。
(定期便にすればいいという話もありますが、化粧品とかシャンプーとか毎回違うものを買いたくなってしまうもので)
技術的な話
フロントエンド:Swift
のみです。
どこに情報を保存しているのかというと、「UserDefaults」です。
しかしこのUserDefaultsが、Xcode上のシミュレーター上では正常に動作していたものの、
どうやらtestflightと本番(App Storeで配布されたもの)では動かないみたいでした。
UserDefaultsのサイズ上限
公式によると、tvOSのみ512kbらしいですが(1MBになると強制終了)、今回はiOSのみ(もしくはiPad OS)なので別の原因を調べることにしました。
App Store Connectのプライバシー設定
どうやら原因はこの設定によるものでした。
私が今までApp Store上にリリースしてきたアプリは、個人情報に関するものは一切保存しないものでした。
今回のアプリでは、いつものプライバシーポリシーに加え、個人に紐づかない情報が端末に保存されるということを設定する必要がありました。

UserDefaultsに直接関連する項目がなかったため「ユーザーに関連付けられないデータ」の「その他のデータ」として設定したところ、即時に反映され、testflight、およびApp Store上で配布されたアプリ上でアラームが追加できることが確認できました。
(審査の時は大丈夫だったのかなぁ😶)
まとめ
今回は、主に買い物メモとしてリリースしました。
帰りにこれ買おうを忘れてしまう方にはとても使えると思います。
このアプリについては今後も改良を重ねていきたいと思います。
一応アプリはこちらからダウンロード可能です。
では、また
コメント