すべての記事
アプリから外部の AI にユーザーの文章を送るとき、Play の「データの安全性」に何を書くか
外部の AI にユーザーの入力を渡すアプリで、Play のデータ安全性フォームの収集・共有・一時処理をどう区分するか。送信を一箇所に集める実装と、順序を誤ると消し漏れるマスキングの実測を添えて整理します。
eas.json に image を書かないままだと、SDK を上げた日に Xcode も pnpm も一緒に動きます
eas.json に image を書いていないビルドの既定は auto です。SDK エイリアスが1つ動くと Xcode・Node.js・pnpm・fastlane がまとめて入れ替わります。Xcode 27 が来る前に、自分のビルドが通ったイメージ名をログから拾い、固定するかどうかを決めるまでの手順です。
targetSdk を 36 にした後、依存ライブラリのどこを見るか
依存ライブラリの AndroidManifest を実際に6本開いて数えました。targetSdkVersion は1本も書かれておらず、代わりに12個の権限が入ってきます。提出前に何を見るべきかの整理です。
定期ジョブの取りこぼしに二週間気づけなかったのは、成功ログだけを見ていたからです
1日2回動くはずのアセット処理ジョブが半分しか発火せず、それでもログは全て成功でした。実行されなかった回を検出する台帳と、滞留の傾きを見る二つ目の番兵を、実行結果つきで組み立てます。
タブレットで縦固定が外れる Android 16 の変更と、Expo 側に用意されていない逃げ道
targetSdkVersion 36 では、sw600dp 以上の画面で screenOrientation が無視されます。app.json の orientation では戻せないこと、オプトアウトのプロパティが何を戻して何を戻さないかを、手元で確かめた出力とあわせて整理しました。
iOS 27 が正式版になる前に、予備の iPhone で公開中の Rork アプリを触っておく
iOS 27 の正式版は9月に来ます。開発者ベータが7回目まで進んだ今のうちに、予備の iPhone へベータを入れて公開中のアプリを触る手順と、見る順番、JS 側で先に潰せる箇所をまとめました。
サムネイルの移設は、配信中の版が旧パスを要求し続ける前提で組みました
サーバー側で画像の置き場所を変えても、ストアで配信中の版はビルド時のパス組み立てを持ち続けます。旧新どちらのパスでも 200 を返す双方向フォールバック、画像とカタログの更新順序、CDN を挟んだまま実応答を確かめる手順を、壁紙アプリの運用で使っている形のまま共有します。
targetSdk を 36 に上げたら 16 KB の警告が出ました。この2つは別の期限です
対象 API レベル36 の8月31日と、16 KB メモリページサイズの2027年2月1日は別の条件です。NDK を入れずに手元の AAB を検査する方法と、LOAD のずれと zip 境界のずれで直し方が変わることを、実際の出力とあわせて整理しました。
Apple の自動解析は、purpose string が書いてあるかではなく何に使うかを読んでいます
Rork や Expo で生成した iOS アプリを提出すると、Guideline 5.1.1 で「placeholder or otherwise insufficient purpose strings」と返されることがあります。キー名が示されないこの指摘の読み方と、app.json から文言を書き直すまでの手順をまとめました。
Rork のプロジェクトで targetSdkVersion 36 を通すまでに直した3か所
app.json に targetSdkVersion 36 と書いてあるのに、ビルドが読んでいた値は 35 でした。実効値を報告するスクリプトと、引き上げ・更新停止・延長申請の三択の分け方を残します。
グラフが壊れて見えるのは、データが多いときではなく最初の数日でした
記録アプリの折れ線グラフが、データの少ない最初の数日だけ線が消える。原因はY軸の幅が0になり座標がNaNになることでした。実測した挙動と、描画前に置く小さな正規化層を紹介します。
TestFlight の外部テストと段階公開、個人開発ではどちらに時間を使うか
Rork で作ったアプリを他人に配るとき、外部テスターを募集する道と段階公開に受け止めさせる道の二つがあります。個人開発の限られた時間をどちらに置くかを、配布が止まる条件と事前検証すべき三領域から整理しました。