お買い物メモアプリ「OKAIMO」を1.4.0にアップデートしました
どうも。Reoです。
久しぶりにお買い物メモアプリ「OKAIMO」を1.4.0にアップデートしましたので、アップデート内容を紹介します。
OKAIMOって?
お買い物をするときに、買い忘れを防ぐためのメモアプリです。iOSアプリのみとなります。
買いたいものを事前にメモしておき、買い物中はチェックを入れるだけ!場所や用途ごとに分類することができるので、TODOリストなどにも利用できます。
アップデート内容
バージョン 1.4.0 では次のアップデートを行いました。
- メモを他のラベルに移動・複製する機能の追加
- メモの共有機能の追加
- 前後のメモに移動する機能を追加
- 整理ボタンを追加
- ラベルの並び替えをする時にクラッシュするバグを修正
- カラー変更をよりわかりやすく修正
メモを他のラベルに移動・複製する機能
メモを他のラベルに移動・複製ができるようになりました。
こちらのGIFは自分が実際に利用している画面となります。
まだ整理できていませんが、「スーパー」ラベルなのに「カレンダー」や一向に見つからない「豆腐麺」や「スプレーのバター」入ってしまっていました。普段使いするスーパーではもう見つからないので邪魔ではあるけど、買いたいものではあるしなぁ〜、でもわざわざ書き直すのも面倒…と思ってそのままにしちゃっています。(カレンダーはそろそろ諦めよう)
この機能のおかげで一括整理ができる様になりました。
ありがたい!
メモの共有機能
メモが共有できるようになりました。右上の「共有」ボタンより共有できます。
また、チェック済みを含むか含まないかを選択できます。
「未チェックのみ」を選択した場合
- にんじん
- セロリ
- オイスターソース
- カレー粉
「チェック済みを含む」を選択した場合
- [x] 焼きそば(冷凍)
- [ ] にんじん
- [x] レタス
- [x] キャベツ
- [ ] セロリ
- [ ] オイスターソース
- [ ] カレー粉
このようなテキストがクリップボードにコピーされます。(マークダウンというフォーマットなので、対応しているメモアプリなどではチェックリストや ・ で表示されます)
代わりに買い物へ行ってもらうときには是非この機能を使ってみてください!
前後のメモに移動する機能
キーボードを開いた状態で、前後のメモに移動できるようになりました。これは、iOS 26以降のみの機能になります。
地味便利機能です。
整理ボタンでよりわかりやすく
これまで、ラベルを編集するためにはラベル自身を「ダブルタップ」する必要がありました。
これを「整理」ボタンから編集・整理できるように修正しました。
これまでのダブルタップ操作でも同様にメニューが表示されます。また「長押し」で並び替えする機能も利用できます。
長押しで並び替えをしようとするとクラッシュするバグもありましたが、今回のバージョンにて修正しました。
カラー変更をよりわかりやすく修正
これまではカラーセットを選択している場合に、ラベルの並び替えで色が変わってしまう仕様でした。これを並び替えをしても色が勝手に変わってしまわないように変更しました。
また、カラーの設定方法も一部変更しました。
カラーに関してはまだまだ改善点が多いと思っていますので、使いづらいとこなどありましたら教えていただけると嬉しいです。
3年ぶりのアップデート
さて、ここからは少し開発に関する内容となります。
OKAIMOを初めてリリースしたのは2019年7月8日でした。なんと7年前ですね。
何度かアップデートはしていましたが、最後のアップデートは2023年1月23日となっていました。バグ修正だけの小さいアップデートでした。
今回はそこからさらに3年ぶりのアップデートとなりました。時が経つのは早いですね。これまでで一番の大型アップデートになりました。
iOS26対応
iOS26よりiOSのデザインが大きく変わりました。それにより別のアプリにて次の対応を行いました。
今回OKAIMOでも Liquid Glass 対応は行いました。実際に対応が必要だった部分は、キーボードの上のツールバー部分ですね。調査中に Safari で前後の TextField に移動する機能をみつけ、OKAIMOにも導入しました。何故かこの機能は iOS 26 からにしましたが、古いバージョンでも対応しても良かったですね…。
恐ろしいことに、iOS12以上なら利用できるアプリになっていたので、今回のアップデートでiOS15以上に引き上げました。全然もっとあげても良かったと思いますが、実装で困ることがなかったので、できる限り低く設定しました。
iOS26どころではなく、ライフサイクルを AppDelegate から SceneDelegate に移行するというレベルから対応しました。
でも意外とOKAIMOで対応しないといけない箇所は少なかった気がします。
Swift Package Manager に移行
利用しているライブラリの整理も行いました。
- RealmSwift を直ダウンロードから SwiftPM に移行
- LicensePlist を Mint から SwiftPM に移行
- SwiftLint を Mint から SwiftPM に移行
- R.swift をプロジェクトから削除
- SnapKit をプロジェクトから削除
RealmSwift は重いので直置きしていましたが、PCスペックがそれを解決してくれるようになったのか気にならなくなったので SwiftPM に移行しました。
使っているライブラリは全て Swift Package Manager に統一しました。プロジェクトフォルダがとてもスッキリしています。
いくつか対応時にメモを残しているので、貼っておきます。少し古いノートもあります。
また、ローカライズの方法もString Catalogsを使う方法に変更しました。
元々ライブラリは必要最低限しか利用していないのですが、さらに依存が減ってとてもスッキリしました。Mint も今までありがとう。
Privacy Manifest 対応
Xcode 15 より Privacy Manifest の対応が必要になりました。
UserDefaults などを使う場合にも PrivacyInfo.xcprivacy に理由を明示しておく必要があります。
発表されてからかなり時間が経ったおかげで、FirebaseやAdMobなども対応してくれているので助かりましたね。
ラベル長押しで並び替えバグ対応
ラベル長押しで並び替えをする時に、「ラベルの幅を維持したまま並び替えをする」ということは意外と簡単ではありません。
SwiftUIが出るよりももっと前からあるアプリなので、UIKitを利用しています。SwiftUIではもしかすると簡単に崩れず実装できるのかもしれませんが、少なくともUIKitではなかなかうまくいきませんでした。
並び替え中に「スーパーマーケット」が「スーパー…」になってしまったり、「本屋」が「 本屋 」になってしまったり…
AIにも相談しましたが、最終的に自分のアイディアでの実装でうまくいったので、これは褒めて欲しいです。
アップデートを終えて
毎月書いているMonthlyNoteに「今月のやること」としてOKAIMOのアップデートを追加し、約20日間ほどでアップデートを完了しました。
AI時代に20日間あれば、もっと手軽に何本もアプリが出せるのかなぁなんて思いながら、人間がちまちまと作業しました。
現代では、AIを使っていないことがむしろ弱みになってしまいそうですが、とても楽しく作業ができました。
AI のつかいどころ
コードはほとんど自分で書いていますが、その中でも今回 OKAIMO の開発に利用したものを紹介します。
Codexのレビュー機能
Codex のコードレビューを利用しました。
PRを出すまでの作業は1人でコツコツやって、PRをAIに見てもらうという形です。
iPad ではクラッシュするよ〜とか、この書き方だとこれまでと挙動変わっちゃうけど大丈夫そ?とか。とてもいい指摘をしてくれます。
無料枠(Plus版で追加課金なしで使える範囲)で利用していたので、途中で制限だよと言われてしまいました。
ローカライズ作業は Nani翻訳 を使って
ローカライズの作業はNani翻訳を利用しました。
ついに無料枠を使い切ってしまったので、課金するか迷っているところです。
AI時代の開発には費用がかかる
これまで iOS アプリ開発には、Apple Developer Program の年額費の支出だけで良かったのに、今回の利用方法だけでも追加の費用がかかってしまいます。
Codexで追加レビューするためには1,000クレジット $40 からで、これは約40回程度のコードレビュー分に当たるそうです。コードレビュー用途だけでも月に1,000クレジットでも足りないのではないかと思います。
人を雇うよりかは遥かに安いのは間違いないですが、個人開発においては良い手段なのか迷いますね。少なくとも既存アプリには課金するほど導入しなくてもいいかなぁという気持ちです。
でもお買い物メモアプリなんて本当に一声で作れちゃうんだろうなぁ…
UI/UX改善
モデルベースUIデザイン 構造化UIと情報設計の方法論を読んだ後だったので、以前よりUI/UXは改善されたのではないでしょうか。
本に「ダブルタップ」はわかりづらいと書かれていたので、もしかするとラベルの設定ができたり、長押しで並び替えができることに気づいていない人もいたかもしれません。
チュートリアルには書いていましたが、文字ばっかりのチュートリアルもきっと読まないだろうし、一度チュートリアル削除をしてしまうと確認できる場所もありませんでした。
文字だらけのチュートリアル自体は変更できていないのですが、「OKAIMO」ボタンを押して出てくる情報画面でも確認できるようにしました。
全てのアクションはボタンで実行できるようにしたうえで、長押しやダブルタップの機能も残しているので、よりわかりやすく、使いやすくなってくれているはずです。
2月当初の予定では、iOS26対応と広告SDKの更新と並び替えバグの対応ぐらいの程度にとどめる予定でしたが、UIの見直しもやってよかったなぁと思います。
おわりに
OKAIMOは自分でも7年使い続けてきたアプリです。
とてもシンプルなアプリになりますが、だからこそ毎日の買い物になってくれています。
古い iPhone にはちょっとしたアイディアもOKAIMOの中に書いてあったので、新しく実装したメモの共有機能を使って、Obsidianに書き出す予定です。
今回のアップデートでより使いやすくなったと思いますので、是非AppStoreにてダウンロードしてみてください!
今後もいつまでも使えるように保守していきますので、末長くよろしくお願いします。
長くなりましたがこの辺で。ではでは。
