◉RORK LABEN
●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…
記事一覧/開発ツール
⬡ 開発ツール/2026-04-28上級

Rork Max で Share Extension を実装する — iOS の共有シートにアプリを表示させる

Rork Max でメモアプリやリーディングリストのような『他アプリから共有を受け取る』機能を実装する完全ガイド。App Group・URL Scheme・最小限のUI設計まで、本番運用可能なコードで解説します。

Rork Max236Share ExtensioniOS115SwiftUI66App Group4Deep Link3

✦ プレミアム記事

iOS でメモアプリを作っていて、「Safari の記事を共有シートから自分のアプリに送れるようにしたい」と思ったことはないでしょうか。私は最初の頃、これが React Native だけで完結すると思い込んで丸2日溶かしました。結論から言うと、Share Extension は別ターゲットのネイティブ実装が必須で、JavaScript 側からは差し込めません。

ただし、Rork Max の SwiftUI ネイティブ生成を組み合わせると、この壁はぐっと下がります。ここで扱うのはRork Max で生成したベースに対して Share Extension ターゲットを追加し、App Group でデータを受け渡し、メインアプリを Deep Link で起動するところまで、実際にビルドして審査に通る構成で解説します。Pocket・Instapaper・Notion のような「共有シートから取り込む」アプリを作りたい方は、ここから先を読み進めてみてください。

なぜ Share Extension は React Native だけで作れないのか

技術的な前提を最初に整理しておきます。Share Extension は iOS の「App Extension」という仕組みで、メインアプリとは別プロセス・別バイナリとして動作します。共有シートに表示されるあの小さなパネルは、メインアプリとは独立した小さなアプリだと考えてください。

そして App Extension は、現時点では Swift / Objective-C で書く必要があります。React Native や Expo は、メインアプリのバンドルを差し替えるための仕組みであって、別ターゲットの Extension までは管理しません。Expo Modules や react-native-share-extension のような OSS は存在しますが、メンテナンスが止まっていたり、UI を React 側で書こうとして起動が遅くなったりと、本番運用でハマりやすい構成です。

私は実際のプロダクトでは、メインアプリ= Rork(React Native)または Rork Max(SwiftUI)/ Share Extension = SwiftUI ネイティブで分離するのが最も安定すると感じています。Rork Max を使えば、その両方を一つのプロジェクトとして扱えるのが強みです。

Extension の種類と役割の整理

iOS には Share Extension のほかに Action Extension、Document Provider、File Provider など多くの拡張があり、最初は混乱します。共有シートに「あなたのアプリへ送る」を出したいなら、選ぶべきは「Share Extension」一択です。

  • Share Extension: 共有シートからコンテンツを受け取り、メインアプリに保存・送信する用途
  • Action Extension: 受け取ったコンテンツを変換して呼び出し元に返す用途(翻訳・要約など)
  • Document Provider: ファイルアプリのプロバイダとして自分のアプリのファイルを公開する用途

メモアプリ・リーディングリスト・SNSクライアント・あとで読むサービスは、すべて Share Extension が正解です。

ステップ 1: Rork Max でベースプロジェクトを作る

まず Rork Max でメインアプリの土台を作ります。プロンプトには「Apple Watch 連携」や「ウィジェット」を最初から含めずに、Share Extension で受け取った URL とタイトルを表示するシンプルな構成にしておくと、後段の差分が見やすくなります。

私が実際に使うプロンプトはこんな形です。

Rork Max で iOS 専用のリーディングリストアプリを作ってください。
- SwiftUI ネイティブ
- 最小ターゲット iOS 17
- 保存した URL とタイトルの一覧を表示
- 起動時に App Group "group.net.rorklab.readlater.shared" の UserDefaults を読む
- URL Scheme "readlater://" で起動された時、URL クエリ "?url=...&title=..." をリストに追記
- データは SwiftData で永続化

Rork Max が生成したプロジェクトを Xcode で開いたら、Bundle Identifier・チーム・Signing を自分のものに差し替えます。ここで動作確認まで終わらせてから次に進むのが鉄則です。Extension を後から足すと、署名関係のエラーが Extension 側で起きているのか、本体側で起きているのか切り分けにくくなります。

✦

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

この記事の続きを読む

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

この記事で得られること
✦Share Extension が必要なのに React Native だけでは実装できず詰まっていた方が、Rork Max のネイティブ生成で動く実装を今日手に入れられます
✦App Group による Extension とメインアプリ間のデータ共有、URL Scheme による起動、UI を最小限に抑える設計を一気に習得できます
✦リーディングリスト・メモアプリ・SNSクライアントのような『他アプリのコンテンツを取り込む』プロダクトを本番想定で今日から開発できます
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ 開発ツール2026-07-18
文字サイズ最大とドイツ語で、生成された画面は静かに詰まる — Rork Max の SwiftUI にレイアウト耐性の検証を通した記録
Rork Max が生成した SwiftUI 画面を疑似ローカライズと最大文字サイズに通し、どこから詰まるかを機械的に洗い出した記録です。ViewThatFits・ScaledMetric・layoutPriority の使いどころと、再生成のたびに回帰を捕まえるスナップショット検証を、実際の数値とともにまとめました。
⬡ 開発ツール2026-05-17
Rork Max の SwiftUI 機能を壁紙アプリ開発で検証した結果 — 実際に動いた機能と手を入れた機能
運用中の壁紙アプリの本番コードを基準に、Rork Max の SwiftUI ネイティブ生成を検証しました。そのまま使えた機能、手を入れた機能、生成を諦めた機能を、動くコードと実機での計測値とともにお伝えします。
⬡ 開発ツール2026-05-16
Rork Max 製 iOS アプリの Firebase CocoaPods を Swift Package Manager へ移行した実録——2026年10月の廃止前に対応した手順と3つの落とし穴
Firebase Apple SDK の CocoaPods 配信が2026年10月に停止します。Rork Max 製 iOS アプリ4本を Swift Package Manager へ移行した実体験をもとに、手順・落とし穴・Dropbox競合コピー問題の解決策を詳細に解説します。