RORK LABEN
BUILD — Rork Max はクラウド上の実機 Mac に Xcode と iOS SDK を載せ、SwiftUI を書き、ビルドし、エラーを読んで直す反復を回します。コードを吐いて終わりではない点が生成物の質に効いていますNATIVE — 生成されるのは React Native ではなく純粋な Swift / SwiftUI です。AR や Metal、ウィジェットなど React Native からは届かない機能に手が届くことが、他ビルダーとの実質的な差になりますPLATFORMS — 対応は iPhone・iPad・Apple Watch・Apple TV・Vision Pro に加えて iMessage まで含みます。ウォッチや拡張から入る設計を試すのに向いていますCOMPANION — Rork Companion により、有料の Apple Developer アカウントなしで生成したアプリを実機の iPhone で確認できます。最初の一本を試す段階の障壁が一段下がりましたPRICING — 無料で開始でき有料プランは月額25ドルから、Rork Max は月額200ドルの Max プランです。回収できる本数と規模を先に見積もっておく価値がありますDEADLINE — Google Play は2026年8月31日以降、新規アプリと更新の双方に対象 API レベル36 以上を要求します。残り10日で、生成物の targetSdkVersion は自分で確認が必要ですBUILD — Rork Max はクラウド上の実機 Mac に Xcode と iOS SDK を載せ、SwiftUI を書き、ビルドし、エラーを読んで直す反復を回します。コードを吐いて終わりではない点が生成物の質に効いていますNATIVE — 生成されるのは React Native ではなく純粋な Swift / SwiftUI です。AR や Metal、ウィジェットなど React Native からは届かない機能に手が届くことが、他ビルダーとの実質的な差になりますPLATFORMS — 対応は iPhone・iPad・Apple Watch・Apple TV・Vision Pro に加えて iMessage まで含みます。ウォッチや拡張から入る設計を試すのに向いていますCOMPANION — Rork Companion により、有料の Apple Developer アカウントなしで生成したアプリを実機の iPhone で確認できます。最初の一本を試す段階の障壁が一段下がりましたPRICING — 無料で開始でき有料プランは月額25ドルから、Rork Max は月額200ドルの Max プランです。回収できる本数と規模を先に見積もっておく価値がありますDEADLINE — Google Play は2026年8月31日以降、新規アプリと更新の双方に対象 API レベル36 以上を要求します。残り10日で、生成物の targetSdkVersion は自分で確認が必要です
記事一覧/アプリ開発
アプリ開発/2026-08-18上級

Rork のプロジェクトで targetSdkVersion 36 を通すまでに直した3か所

app.json に targetSdkVersion 36 と書いてあるのに、ビルドが読んでいた値は 35 でした。実効値を報告するスクリプトと、引き上げ・更新停止・延長申請の三択の分け方を残します。

Rork539Expo175Android46Google Play27targetSdkVersion2

プレミアム記事

期限の13日前に確認して正解でした、というのが今回の率直な感想です。

Google Play の対象 API レベル36 の要求開始は 2026年8月31日。手元の Android アプリの app.json には、以前の作業で targetSdkVersion: 36 と書き込んであります。宣言は済んでいる、と思っていました。

実際にビルドが読んでいた値は 35 でした。

宣言と実効値がずれていたことに気づいたのは、提出直前の確認ではなく、期限までの残り日数を数えていたときの偶発です。もし提出の当日に気づいていたら、審査の並びに間に合っていたか怪しいところでした。以下は、そのずれがどこで生まれ、どう直し、そして引き上げないという選択をどのアプリに適用したかの記録です。

8月31日に変わることと、変わらないこと

先に一次情報を整理します。ここを曖昧にしたまま作業に入ると、直さなくてよいものまで直すことになります。

対象2026年8月31日以降の要求
新規アプリ・アプリの更新の提出Android 16(API レベル36)以上を対象にしていること
Wear OS / Android Automotive OSAndroid 15(API レベル35)以上
Android TV / Android XRAndroid 14(API レベル34)以上
既存アプリ(更新しない場合)API レベル35 以上であれば、対象 API レベルより新しい OS の端末でも新規ユーザーへの配信が続く

この表の最後の行が、今回の判断の分かれ目になりました。

更新を出さないアプリは、8月31日を過ぎても消えるわけではありません。 API レベル35 を満たしていれば、新しい端末の新規ユーザーにも届き続けます。止まるのは「更新の提出」です。ここを「全アプリを36に上げないと配信が止まる」と読み違えると、13日という残り時間の使い方を間違えます。

延長の窓口も用意されています。8月31日に間に合わない場合、Play Console のポリシー ステータス ページに出る警告の詳細から延長フォームを開き、2026年11月1日まで全ユーザーへの配信を継続できます。ただし延長は自動では付きません。申請そのものを期限内に済ませる必要があります。

targetSdkVersion は1か所では決まっていませんでした

Rork や Expo が出力するプロジェクトで targetSdkVersion を決めうる場所は、私が数えたかぎり3つあります。

  1. app.jsonexpo-build-properties プラグイン設定
  2. android/gradle.propertiesandroid.targetSdkVersion
  3. android/build.gradleext ブロックにあるフォールバック既定値

問題は、1が2に反映されるタイミングです。expo-build-propertiesnpx expo prebuild が native ディレクトリを生成するときに働く config plugin であり、公式ドキュメントにも「prebuild を実行しないプロジェクト(bare プロジェクト)では使えない」と明記されています。

つまり android/ をリポジトリにコミットしている状態では、app.json をいくら書き換えても、prebuild を通さないかぎり値は届きません。そして android/build.gradle の既定値は、そのプロジェクトを生成した当時の SDK バージョンのまま固まっています。

私の場合、app.json を触ったのは Expo のドキュメントを読みながらの作業で、そのあと android/ を先に生成していたプロジェクトが混ざっていました。宣言だけが更新され、ビルドが読む値は据え置き。ビルドは通り、署名も通り、AAB も出来上がります。何もエラーは出ません。

生成物をそのまま提出する運用ほど、この抜け方をします。ビルダーが動く以上、手を止める理由がどこにもないからです。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
app.json の宣言ではなく「ビルドが実際に読む値」で targetSdkVersion を判定できるようになる
提出がはねられてから慌てる前に、手元のプロジェクトを1コマンドで洗い出し、期限に間に合うかを先に判断できるようになる
引き上げる・更新を止める・延長申請を出すの三択を、アプリごとの状況から選び分けられるようになる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

開発ツール2026-04-07
Google Play の審査で Rork アプリが止まる場所 — AD_ID の混入・権限マージ・12人のクローズドテスト
Rork で生成した Expo アプリが Google Play で止まるとき、原因は書いた覚えのない権限にあることが多くあります。マージ後の AndroidManifest を確定させる手順、AD_ID を宣言する側と外す側の判断、12人・14日のクローズドテストの回し方をまとめました。
アプリ開発2026-08-16
グラフが壊れて見えるのは、データが多いときではなく最初の数日でした
記録アプリの折れ線グラフが、データの少ない最初の数日だけ線が消える。原因はY軸の幅が0になり座標がNaNになることでした。実測した挙動と、描画前に置く小さな正規化層を紹介します。
アプリ開発2026-08-06
壁紙の上の文字が読めるかを、端末ではなく取り込み時に決める — 判定指標を4つ測り比べた記録
壁紙の上に置くステータスバーや見出しが読めるかを、端末での画像解析ではなく取り込み時のメタデータで決める設計です。240枚のコーパスで判定指標を4つ実測し、縮小画像での判定が何と一致するのかまで記録しました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →