RORK LABEN
TOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しましたTOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しました
記事一覧/開発ツール
開発ツール/2026-05-04中級

Rork アプリを iOS 26 & Expo SDK 54 に対応させる実践ガイド — Liquid Glass の実装手順

iOS 26 リリースで Rork 製 React Native アプリに必要な対応を整理。Expo SDK 54 への移行手順、Liquid Glass タブバーの実装、GlassView の使い方、よくあるエラー対処まで実際のコードで解説します。

iOS 264Expo SDK 54Liquid Glass3React Native209アップデートNativeTabs

iOS 26 がリリースされてから、アプリのレビューに「タブバーの見た目が変わった」「ナビゲーションが以前と違う」という声が届くようになりました。Apple が iOS 26 で導入した Liquid Glass というデザイン言語は、対応しているアプリとそうでないアプリの見た目の差を、ユーザーが肌で感じ始めるほど目立つ変化になっています。

Rork で作った React Native / Expo アプリも、この変化から無縁ではありません。何もしなくても動き続けはしますが、iOS 26 のデザイン言語に最適化するには Expo SDK のバージョンアップと少しのコード変更が必要になります。一方で、焦って全部一気に対応しようとすると既存ユーザーへの影響が出ることもあります。

ここでは既存の Rork アプリを iOS 26 に対応させるための手順を、優先度をつけながら解説します。スキップしても問題ないものと、早めに対応したほうがいいものを分けて整理していきます。

iOS 26 で React Native アプリに何が起きるか

iOS 26 の変化はデザイン面が中心ですが、React Native アプリに直接影響する点がいくつかあります。

タブバーが Liquid Glass スタイルに変わる

iOS 26 では、システムのタブバーが半透明のガラス素材風(Liquid Glass)に変わります。expo-router の Tabs コンポーネントを使っているアプリは、Expo SDK 54 以降で NativeTabs API を通じてこのネイティブスタイルが自動的に反映されます。タブアイコンのデザインによっては Liquid Glass 背景との相性が悪くなることがあるので、実機での確認が大切です。

back ナビゲーションの UI が変わる

スタックナビゲーションの戻るボタン周辺にも Liquid Glass が適用されます。Expo Router v4 以降ではほぼ自動で対応されますが、カスタムのヘッダースタイルを細かく設定していた場合は、意図しない表示になることがあります。

Edge-to-edge 表示がより厳格になる

iOS 26 では edge-to-edge(画面端から端まで)表示がさらに標準化されています。Safe Area Insets を正しく設定していないアプリでは、コンテンツがステータスバーやホームインジケーターと重なりやすくなっています。これは以前からの推奨事項ではありますが、iOS 26 ではより顕在化しやすい状況になっています。

Expo SDK 54 への移行が最初の一歩

Liquid Glass の恩恵を受け、iOS 26 対応を進めるには、まず Expo SDK を 54 以上にアップグレードする必要があります。SDK 54 には React Native 0.81 が含まれており、iOS 26 のネイティブ UI コンポーネントにアクセスできるようになります。

# Expo SDK 54 への移行
npx expo install expo@latest
 
# 依存関係を SDK 54 対応バージョンに自動更新
npx expo-doctor
npx expo install --fix

expo-doctor を実行すると、SDK 54 に対応していないライブラリや設定の問題が一覧で表示されます。まずこのコマンドの出力を確認してから移行を進めるのが安全です。

Rork 生成アプリは比較的スムーズに移行できる

Rork が生成するアプリは比較的シンプルな依存関係で構成されていることが多く、SDK 54 への移行はスムーズなケースが多いです。ただし、サードパーティの Native モジュールを追加している場合は、そのライブラリの SDK 54 対応状況を個別に確認することをお勧めします。依存関係のエラーが出た場合は、Expo 依存関係エラーの対処法が参考になるかもしれません。

SDK 55 への移行は慌てなくて大丈夫

2026年5月時点では Expo SDK 55(React Native 0.83 + React 19.2)もリリースされていますが、SDK 55 は Legacy Architecture のサポートを完全に削除しています。Rork 生成アプリの一部で New Architecture の移行が完了していない場合は、まず SDK 54 で iOS 26 対応を安定させてから、SDK 55 の移行を検討するほうが安全です。SDK 55 の新機能や Hermes v1 の最適化については、Expo SDK 55 パフォーマンス最適化ガイドも参照してください。

Liquid Glass の実装 — NativeTabs と GlassView

SDK 54 への移行が完了したら、Liquid Glass デザインを実装していきましょう。

NativeTabs でタブバーを Liquid Glass に

expo-router v4 の Tabs コンポーネントは、iOS 26 デバイスでは自動的に Liquid Glass スタイルのタブバーを使用します。特別なコードを追加しなくても、SDK 54 + expo-router v4 の組み合わせで動作するはずです。

// app/(tabs)/_layout.tsx
import { Tabs } from 'expo-router';
import { Ionicons } from '@expo/vector-icons';
 
export default function TabLayout() {
  return (
    <Tabs
      screenOptions={{
        // iOS 26 では自動的に Liquid Glass タブバーが適用される
        // tabBarStyle の変更は Liquid Glass の外観に影響する場合がある
        headerShown: false,
      }}
    >
      <Tabs.Screen
        name="index"
        options={{
          title: 'ホーム',
          tabBarIcon: ({ focused, color, size }) => (
            <Ionicons
              name={focused ? 'home' : 'home-outline'}
              size={size}
              color={color}
              // iOS 26 では color が Liquid Glass に合わせて自動調整される
            />
          ),
        }}
      />
      <Tabs.Screen
        name="explore"
        options={{
          title: '探索',
          tabBarIcon: ({ focused, color, size }) => (
            <Ionicons
              name={focused ? 'search' : 'search-outline'}
              size={size}
              color={color}
            />
          ),
        }}
      />
    </Tabs>
  );
}

実機で確認した際にアイコンの色が Liquid Glass 背景と合わない場合は、tabBarActiveTintColortabBarInactiveTintColor を調整してみてください。

GlassView でカードやヘッダーにガラス効果を追加

タブバー以外の場所にも Liquid Glass 効果を使いたい場合は、expo-glass-effect パッケージが利用できます。

npx expo install expo-glass-effect
import { GlassView } from 'expo-glass-effect';
import { Platform, Text, View, StyleSheet } from 'react-native';
 
// iOS バージョンのチェック(フォールバック必須)
const isIOS26OrLater =
  Platform.OS === 'ios' && parseInt(Platform.Version as string, 10) >= 26;
 
export default function GlassCard({ children }: { children: React.ReactNode }) {
  if (isIOS26OrLater) {
    return (
      <GlassView
        intensity="medium"  // "low" | "medium" | "high"
        tint="system"       // "light" | "dark" | "system"
        style={styles.glassCard}
      >
        {children}
      </GlassView>
    );
  }
 
  // iOS 25 以下のフォールバック(不透明の通常ビュー)
  return (
    <View style={[styles.glassCard, styles.fallbackCard]}>
      {children}
    </View>
  );
}
 
const styles = StyleSheet.create({
  glassCard: {
    padding: 16,
    borderRadius: 16,
    overflow: 'hidden',
    marginVertical: 8,
  },
  fallbackCard: {
    backgroundColor: 'rgba(255, 255, 255, 0.9)',
    shadowColor: '#000',
    shadowOffset: { width: 0, height: 2 },
    shadowOpacity: 0.1,
    shadowRadius: 8,
    elevation: 4,
  },
});

フォールバック実装を省略しないこと

GlassView は iOS 26 以上でのみ動作します。フォールバックなしにすると、iOS 25 以下のユーザーでクラッシュが発生します。iOS 26 のシェアはまだ100%ではないので、必ずフォールバックを用意してください。

iOS 26 対応でよく遭遇するエラーと対処法

実際に移行を進めていると、いくつかパターン化されたエラーに出会います。

GlassView でクラッシュ「API not available」

一部の iOS 26 ベータ版では Liquid Glass API が利用できないバージョンがあります。上記のフォールバック実装(isIOS26OrLater チェック)で対応できます。iOS 26 リリース版では基本的に問題ありません。

タブアイコンの tint color がスクロール時に正しく変わらない

これは expo-router の既知の問題(expo/expo Issue #39930)です。SDK 54 の最新パッチバージョンで修正されていることが多いので、npx expo install expo-router@latest で更新してみてください。

back ナビゲーションに Liquid Glass が強制適用されてカスタムスタイルが崩れる

iOS 26 では back navigation の UI に Liquid Glass が適用されます(expo/expo Issue #40081)。カスタムのヘッダースタイルを設定している場合は、Expo Router の headerStyleheaderBackground プロパティを使って調整が必要になるケースがあります。

SDK 55 移行時に New Architecture 未対応ライブラリでエラー

SDK 55 では Legacy Architecture が完全に削除されているため、New Architecture 未対応のライブラリがあると移行時にエラーになります。React Native New Architecture 移行ガイドを参考に、ライブラリの互換性を事前に確認しておくと安心です。

Rork Max の SwiftUI アプリとの違い

Rork Max で生成した SwiftUI ネイティブアプリは、iOS 26 の Liquid Glass を Expo とは別の方法で扱います。SwiftUI では .glassEffect() モディファイアを直接使えるため、コンポーネント単位での細かなカスタマイズが可能です。

Rork Max の SwiftUI アプリで iOS 26 対応を進めている方は、Rork Max iOS 26 Liquid Glass 実装ガイドもあわせて参考にしてください。

対応の優先順位

iOS 26 対応は一度に全部やる必要はありません。私がお勧めする順序はこちらです。

まず Expo SDK 54 へのアップグレードを行い、expo-doctor で警告がないことを確認します。次に Safe Area の動作確認です。実機で iOS 26 デバイスを使い、コンテンツがステータスバーやホームインジケーターと重なっていないかを確認します。その後、TestFlight でタブバーの Liquid Glass 表示を確認します。アイコンの色や見た目に問題がなければ、この時点でリリース可能です。

GlassView を使った追加の Liquid Glass 演出は、その後の余裕があるタイミングで段階的に取り入れていくのがいいと思います。SDK 55 への移行も、Legacy Architecture を使っているライブラリがないことを確認してから進めると安全です。

まずは SDK 54 にアップグレードして、TestFlight に出して実機確認。これが一番シンプルで確実なスタート地点です。

React Native や Expo のエコシステムは変化が速いですが、Rork が生成するアプリのシンプルな構成は、こういった移行のしやすさという点では大きな強みだと感じています。

シェア

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

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

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

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

開発ツール2026-05-05
iOS 26 Liquid Glass に対応したら既存 UI が崩れた — Rork Max アプリの修正手順
iOS 26 の Liquid Glass 対応後にナビゲーションバー消失・カラー崩れ・フローティングタブバーのレイアウトズレが起きたときの原因と、Rork Max への具体的な修正プロンプトを解説します。
開発ツール2026-04-26
Rork Max のアプリに iOS 26 の Liquid Glass を取り入れる — 実機で 3 本検証して見えた使いどころと落とし穴
Rork Max で生成した SwiftUI アプリに iOS 26 の Liquid Glass を組み込み、実機で公開まで進めて気付いた点をまとめました。glassEffect の使いどころ、フォールバック、よくある UI 崩れの避け方を実例で整理します。
開発ツール2026-07-15
「、」が行頭に落ちた — Rork が組んだ名言カードと日本語の禁則処理
React Native の Text は日本語の行頭禁則を保証しません。実測した違反率、WORD JOINER による事前結合の実装、onTextLayout での自動監査、Rork Max(SwiftUI)との挙動差までまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →