Crashlytics の Velocity Alert を Claude in Chrome でトリアージした3週間の所感
壁紙アプリの Crashlytics Velocity Alert を Claude in Chrome に開かせてトリアージする運用を3週間続けました。何が楽になり、何は人の判断が必要かを正直にまとめます。
Rork 個人開発の最小カスタマーサポート設計 — 一人で複数アプリを運用するための問い合わせインフラ
個人開発で複数アプリを運用するときに必要な、最小構成のカスタマーサポート基盤について書きます。アプリ内フォーム・自動添付・Gmail振り分け・返信テンプレートまで、一人で年間数千件の問い合わせを捌くために私が組み上げた実装をそのまま共有します。
AdMob オープンアプリ広告の頻度設計 — 復帰時の体感ストレスを抑えながら eCPM を取りに行く運用メモ
壁紙アプリの最新アップデートで AdMob オープンアプリ広告のフリークエンシー設計を作り直した実装メモです。最小間隔・コールドスタート除外・ホーム戻り抑制を Remote Config で動的制御し、Claude in Chrome で日次の傾向確認を半自動化した工程をまとめています。
FlatList の onEndReached が連続発火して API を叩きすぎる問題の原因と対処
FlatList の onEndReached が画面遷移時や初期描画時に何度も呼ばれて、ページネーション API を多重に叩いてしまう問題。Rork で生成したリスト画面でも頻発するこの挙動の原因と、実運用で使える対処パターンを整理しました。
RorkでビルドしたiOSアプリがTestFlightで「ITMS-90683」拒否される — Info.plistの使用目的文字列の埋め方
Rork書き出しのiOSアプリをApp Store Connectに提出した直後、メールで「ITMS-90683: Missing Purpose String in Info.plist」を受け取る現象について、原因とapp.jsonからの恒久的な修正手順を、12年間の個人開発で繰り返しハマってきた立場から具体的に説明します。
AdMob のダッシュボードを毎日見ない運用に切り替えた所感 — Rork アプリで Slack 通知 4 階層を組んでから 2 ヶ月
2014年からアプリ運営を続けるなか、AdMob を毎日開く習慣を手放しました。Slack 通知を4階層に分けて Rork アプリの広告指標を眺めない運用に変えてから2ヶ月の所感を、設計判断と失敗例を含めて書いています。
個人開発で『本番障害の自動応答』を仕組み化する ― Crashlytics・Sentry・Slack 通知・段階的ロールバックの設計
個人開発で 12 年・累計 5,000 万 DL を運用してきた中で組み上げた、本番障害の自動応答アーキテクチャをまとめます。Crashlytics と Sentry の二段重ね、Slack 通知の階層化、Remote Config による段階的ロールバックの実装例を共有します。
Rork で VoiceOver と Dynamic Type を本番品質に整える実装メモ
Rork で出力した React Native アプリに VoiceOver・Dynamic Type・Reduce Motion を本番品質で組み込むための、ラベル設計・フォーカス管理・回帰テストまで含めた実装メモです。
Rork と Claude on Xcode を並行で回した1ヶ月の所感 — 壁紙アプリ更新で見えた使い分け
iOS と Android の壁紙アプリを2014年から個人で運用してきた立場から、Rork と Claude on Xcode を同時に机に並べた1ヶ月の実際の使い分けを記録します。新規と既存で求められる作業の質が違う、という当たり前の話を運用の温度で残しました。
Rork × StoreKit 2 × App Store Server API — 個人開発アプリのサブスク基盤を3層で守る実装設計
Rork製iOSアプリのサブスク収益を、StoreKit 2のクライアント検証、App Store Server APIによるサーバー側JWS検証、Server Notifications V2の監視という3層で守る実装設計です。権利テーブルの設計、定期再同期、サンドボックスの罠、障害時の運用まで公開します。
Rork で AsyncStorage に大容量データを保存すると Android で CursorWindow エラーが出る原因と対処
Rork(React Native)で AsyncStorage に大きな JSON や画像メタデータを保存すると Android で発生する Row too big to fit into CursorWindow エラーの原因と、MMKV・SQLite・分割保存・圧縮など複数の現実的な対処をまとめています。
Rork で作ったアプリの最初の 72 時間で起きること — クラッシュ・レビュー・広告の優先順位
Rork で組んだアプリを App Store / Google Play にリリースした直後の72時間は、その後の評価とランキングをほぼ決めてしまいます。個人開発で繰り返し経験してきたリリース直後の動きを、対応の優先順位とともに整理します。