RORK LABEN
EVENT — 本日9月9日、Apple が「Surprise and Shine」と題したイベントを開きます。日本時間では9月10日の未明2時からですEXPECT — iPhone 18 Pro と Pro Max、折りたたみ機、2nm プロセスの A20 Pro チップ、そして iOS 27 以下の配信日発表が見込まれていますWAIT — この記事を書いている時点ではまだ開催前です。噂の段階で書いたものと発表後に書いたものが混ざると、読む側には区別がつきませんMAX — Rork Max がネイティブ Swift を生成する以上、Apple の動きは他人事ではありません。標準の Rork は React Native、という線引きは繰り返し確認したいところですSIMULATOR — Rork Max はクラウド上の Mac でコンパイルし、ブラウザ内で動くストリーミングの iOS シミュレータで確認できます。Xcode も Mac の実機も要りませんSEASON — OS が新しくなる時期は、自動生成の足場がいちばん揺れます。便利さを謳う記事ほど、この揺れに触れないと不誠実になると感じていますEVENT — 本日9月9日、Apple が「Surprise and Shine」と題したイベントを開きます。日本時間では9月10日の未明2時からですEXPECT — iPhone 18 Pro と Pro Max、折りたたみ機、2nm プロセスの A20 Pro チップ、そして iOS 27 以下の配信日発表が見込まれていますWAIT — この記事を書いている時点ではまだ開催前です。噂の段階で書いたものと発表後に書いたものが混ざると、読む側には区別がつきませんMAX — Rork Max がネイティブ Swift を生成する以上、Apple の動きは他人事ではありません。標準の Rork は React Native、という線引きは繰り返し確認したいところですSIMULATOR — Rork Max はクラウド上の Mac でコンパイルし、ブラウザ内で動くストリーミングの iOS シミュレータで確認できます。Xcode も Mac の実機も要りませんSEASON — OS が新しくなる時期は、自動生成の足場がいちばん揺れます。便利さを謳う記事ほど、この揺れに触れないと不誠実になると感じています
記事一覧/アプリ開発
アプリ開発/2026-08-18上級

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

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

Rork558Expo203Android48Google Play34targetSdkVersion4

プレミアム記事

期限の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/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

アプリ開発2026-08-23
targetSdk を 36 に上げたら 16 KB の警告が出ました。この2つは別の期限です
対象 API レベル36 の8月31日と、16 KB メモリページサイズの2027年2月1日は別の条件です。NDK を入れずに手元の AAB を検査する方法と、LOAD のずれと zip 境界のずれで直し方が変わることを、実際の出力とあわせて整理しました。
開発ツール2026-04-07
Google Play の審査で Rork アプリが止まる場所 — AD_ID の混入・権限マージ・12人のクローズドテスト
Rork で生成した Expo アプリが Google Play で止まるとき、原因は書いた覚えのない権限にあることが多くあります。マージ後の AndroidManifest を確定させる手順、AD_ID を宣言する側と外す側の判断、12人・14日のクローズドテストの回し方をまとめました。
アプリ開発2026-09-09
閉鎖テストの14日間は、待つ時間ではなく申請フォームに書く材料を集める時間です
Google Play の本番アクセスは、閉鎖テストで12人が連続14日以上 opt-in している状態から申請します。日数の数え方、トラックを通す順番、申請フォームが聞いてくる項目と、14日間に残しておく記録のかたちをまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます