◉RORK LABEN
●EXPO — EAS Observe がネイティブクラッシュも記録(10/07)。SDK 57 は 57.0.21 以降で確認できます●SDK 58 — SDK 58 Beta は 9/15 公開。stable の日付はまだ未確認です●RN 0.88 — React Native 0.88.x の正式リリース予定は 10/12、残り3日●Q&A — expo-widgets が本番ビルドだけ真っ黒になる、という問いが出ています●RORK — 09-29 に GPT-6.1 Sol を追加。Pro・Max プランで利用できます●NEW — クライアントのアプリを作る前に決める、公開アカウントの持ち主●EXPO — EAS Observe がネイティブクラッシュも記録(10/07)。SDK 57 は 57.0.21 以降で確認できます●SDK 58 — SDK 58 Beta は 9/15 公開。stable の日付はまだ未確認です●RN 0.88 — React Native 0.88.x の正式リリース予定は 10/12、残り3日●Q&A — expo-widgets が本番ビルドだけ真っ黒になる、という問いが出ています●RORK — 09-29 に GPT-6.1 Sol を追加。Pro・Max プランで利用できます●NEW — クライアントのアプリを作る前に決める、公開アカウントの持ち主
記事一覧/開発ツール
⬡ 開発ツール/2026-06-26上級

Rorkで作ったアプリの進行状況を、ロック画面とダイナミックアイランドに出す

Rork Maxが生成したSwiftアプリにLive ActivitiesとActivityKitを組み込み、瞑想タイマーや配送状況をロック画面・ダイナミックアイランドに表示するまでを、動くコードと申請時のハマりどころつきで整理します。

Rork Max235Live Activities5ActivityKit4Dynamic Island3Swift48

✦ プレミアム記事

朝の瞑想アプリを自分で使っていて、いちばん不満だったのは「残り時間を見るためだけにアプリを開き直す」動作でした。目を閉じて呼吸を整えている最中に、画面を点けてアプリに戻る。それだけで集中が切れます。私自身、個人開発で癒し系のアプリをいくつか App Store で運営していますが、タイマー系の機能はこの「開き直し」をどれだけ減らせるかが体験の質に直結します。

Rork Max が出力するのは本物の Swift なので、ここは iOS の Live Activities に素直に乗せられます。ロック画面に残り時間のカードを出し、対応端末ではダイナミックアイランドにも畳んで表示する。瞑想タイマーを題材に、ActivityKit を使った実装を、つまずいた順番で並べていきます。配送状況やスポーツのスコアなど、ほかの「短時間ずっと気になる情報」にもそのまま応用できます。

Live Activitiesが向いている情報とそうでない情報

最初に線引きをしておきます。Live Activities は「数分から数時間のあいだ、刻々と変わる一つのイベント」を出すための仕組みです。瞑想の残り時間、料理のタイマー、配車の到着、注文の調理状況などが典型です。

逆に、通知でいい情報をここに載せてはいけません。たとえば「新着記事が3件あります」のような一覧性の情報は Live Activities の設計思想と合いませんし、審査でも指摘されます。私が最初に作ったときは欲張って複数の状態を一枚に詰め込みましたが、結局いちばん見たい残り時間が小さくなって本末転倒でした。一画面に出す主役は一つに絞ることを強く推奨します。

まず器を用意する 〜Info.plistとWidget Extension

ActivityKit を動かすには下準備が要ります。手順は次の3つです。

  1. アプリ本体の Info.plist に NSSupportsLiveActivities を YES で追加します。これがないと、後述の Activity.request が静かに失敗します。
  2. Live Activities の見た目は Widget Extension の中に書きます。Xcode のターゲット追加から Widget Extension を作り、ActivityConfiguration を実装します。
  3. アプリ本体と Widget Extension で ActivityAttributes の型定義を共有します。別々に書くと、デコードが食い違って更新だけが無言で落ちます。

Rork Max が生成したプロジェクトに Widget Extension が無い場合は、自分で一つ足す必要があります。ここは生成任せにせず、手で確認したほうが確実です。

✦

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

この記事の続きを読む

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

この記事で得られること
✦瞑想タイマーやカウントダウンの残り時間を、アプリを開かずロック画面とダイナミックアイランドで確認できる状態に作り替えられる
✦ActivityKitのstart/update/endの3手順と、16KB制限・8時間上限という実装前に知っておきたい数値を動くコードで手に入れられる
✦TestFlightでは出るのに本番で更新が届かないという、Push更新まわりの落とし穴を事前に潰してリリースできる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ 開発ツール2026-04-05
Rork Max × WidgetKit・ライブアクティビティ実装ガイド 2026 — Dynamic Island 対応まで
Rork Max で iOS Widget・ロック画面ウィジェット・Dynamic Island 対応のライブアクティビティを実装した記録。Timeline の焼き込み設計、APNs のヘッダーと優先度、push-to-start、stale-date の扱いまで実運用の判断を残します。
⬡ 開発ツール2026-07-18
文字サイズ最大とドイツ語で、生成された画面は静かに詰まる — Rork Max の SwiftUI にレイアウト耐性の検証を通した記録
Rork Max が生成した SwiftUI 画面を疑似ローカライズと最大文字サイズに通し、どこから詰まるかを機械的に洗い出した記録です。ViewThatFits・ScaledMetric・layoutPriority の使いどころと、再生成のたびに回帰を捕まえるスナップショット検証を、実際の数値とともにまとめました。
⬡ 開発ツール2026-05-17
Rork Max の SwiftUI 機能を壁紙アプリ開発で検証した結果 — 実際に動いた機能と手を入れた機能
運用中の壁紙アプリの本番コードを基準に、Rork Max の SwiftUI ネイティブ生成を検証しました。そのまま使えた機能、手を入れた機能、生成を諦めた機能を、動くコードと実機での計測値とともにお伝えします。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます