この記事で分かること
- 株主優待の管理アプリ「株主優待カレンダー」を個人で作って、Google Play と App Store に公開するまでの流れ
- Mac を持っていなくても iPhone アプリを出せた方法
- 使った技術と、つまずいたところ
アプリはこちらです。無料で使えます。
- iPhone / Android:株主優待カレンダー(紹介ページ)
- 優待がいつ届くかを調べるサイト:株主優待はいつ届く?
なぜ作ったか
株主優待を持っていると、「この銘柄の権利日はいつだっけ」「届いた優待券の期限、いつまでだっけ」がよく分からなくなります。手帳や表計算で管理していましたが、権利日と到着時期は銘柄ごとにずれるので、続きませんでした。
自分が欲しいものを作るのが一番早い、ということで作り始めたのがこのアプリです。
できること
- 銘柄コードを入れるだけで、銘柄名と権利確定月・到着予定月が自動で入る(東証の全上場銘柄に対応)
- 権利付き最終日の 3 日前と当日に通知
- 届いた優待にチェックを付けると、優待券の有効期限も記録され、期限前に通知
- 「まだ買っていないけど検討中」の銘柄も登録でき、権利日前に知らせてくれる
- 保有銘柄の優待が廃止・変更されたときにお知らせ(公式情報を確認して配信)
技術構成
| 役割 | 使ったもの |
|---|---|
| 画面 | React 19 + TypeScript + Tailwind CSS |
| スマホアプリ化 | Capacitor 8(Web の画面をそのまま iOS / Android のアプリにする) |
| データ・認証 | Firebase(Firestore・Authentication) |
| 課金 | RevenueCat + Google Play Billing / App Store |
| 広告 | AdMob |
| クラッシュ監視 | Crashlytics・Sentry |
| iOS のビルド | Codemagic(クラウドの Mac でビルドして TestFlight へ) |
| iOS の動作確認 | Appetize.io(ブラウザー上の iPhone シミュレータ) |
ポイントは Web の技術だけで両 OS のアプリを作っていることです。画面は普通の React で書き、Capacitor がそれをアプリの形に包んでくれます。通知や課金のような OS の機能は、Capacitor のプラグインを呼ぶだけで済みました。
Mac なしで iPhone アプリを出す
iOS アプリのビルドには Mac が必要です。私は Windows しか持っていませんが、次の組み合わせで App Store まで行けました。
- Codemagic:GitHub にコードを置いておくと、クラウド上の Mac でビルドして TestFlight にアップロードしてくれます。個人開発の規模なら無料枠で足ります。
- Appetize.io:ブラウザーの中で iPhone を動かせるサービス。ビルドした .app を上げて、画面の確認やスクリーンショットの撮影に使いました。
- 審査の動作確認は友人の iPad:Apple の審査で「実機での画面録画を送ってほしい」と言われたときは、友人に協力してもらいました。
Apple の審査は 2 回差し戻されました。トラッキング許可のダイアログが出ていない、アカウント削除機能が無い、サブスクリプションの画面に利用規約のリンクが無い、といった指摘で、いずれも Apple のガイドラインどおりに直せば通ります。ガイドラインは先に読んでおくべきでした。
つまずいたところ
- Android のコード難読化(R8)で起動時にクラッシュ:リリース版だけ落ちる、という嫌な不具合でした。難読化を外して解決。
- ストアの審査用の自動テストが、アプリの中にでたらめなデータを登録した:みんなで共有する銘柄データに「rsnisz」のような名前が混ざり、利用者の画面に出てしまいました。共有データより内蔵の正しいデータを優先する作りに変えました。
- 優待のデータが間違っている:ネット上の情報を元にしていたら、2 割くらい権利月が違っていました。今は 240 銘柄以上を各社の公式情報で 1 件ずつ確認しています。この確認結果を、検索して調べられるサイトとしても公開しています。
収益について
広告とサブスクリプション(プレミアム)です。公開して数か月の時点では、月に数百円の広告収入で、有料会員はまだいません。個人開発のアプリの現実はだいたいこういうもので、ここからどう伸ばすかを試しているところです。この話は別の記事に書きます。
まとめ
Windows しか無くても、Web の技術だけで、iPhone と Android の両方にアプリを出せます。費用は Apple Developer Program の年 99 ドルと Google Play の登録料 25 ドルくらいで、あとはほぼ無料で回っています。
株主優待を持っている方は、ぜひ使ってみてください。感想や要望は X(@yutai_calendar)まで。
ナノトイラボ 