RORK LABEN
BUILD — Rork Maxがネイティブ Swift アプリを生成し、React Nativeでは届きにくい領域に踏み込めますPLATFORM — Rork MaxはiPhone・iPad・Apple Watch・Apple TV・Vision Pro・iMessageに対応しますNATIVE — HealthKit・Core ML・NFC・Dynamic Island・Live Activitiesなどのネイティブ機能が使えますTEST — ブラウザ内ストリーミングiOSシミュレータで、XcodeやMacなしでテストできますDEPLOY — ビルド・証明書・App Store申請までの自動化で公開までを簡素化しますPRICE — 無料で開始でき、有料プランは$25/月〜、Rork Maxは$200/月ですBUILD — Rork Maxがネイティブ Swift アプリを生成し、React Nativeでは届きにくい領域に踏み込めますPLATFORM — Rork MaxはiPhone・iPad・Apple Watch・Apple TV・Vision Pro・iMessageに対応しますNATIVE — HealthKit・Core ML・NFC・Dynamic Island・Live Activitiesなどのネイティブ機能が使えますTEST — ブラウザ内ストリーミングiOSシミュレータで、XcodeやMacなしでテストできますDEPLOY — ビルド・証明書・App Store申請までの自動化で公開までを簡素化しますPRICE — 無料で開始でき、有料プランは$25/月〜、Rork Maxは$200/月です
記事一覧/ビジネス
ビジネス/2026-07-02中級

コントロールセンターに自作コントロールを置く — Rork Max アプリの起動導線を増やす ControlWidget 設計

iOS 18 の ControlWidget でコントロールセンター・ロック画面・アクションボタンに自作コントロールを置く実装。ControlWidgetButton と ControlWidgetToggle の動くコード、起動導線としての価値、リテンションへの効かせ方を解説します。

rork-max39controlwidgetwidgetkitapp-intentsretention

プレミアム記事

数年前、運用中のアプリにホーム画面ウィジェットを追加したところ、機能はほぼ同じままなのに起床時間帯の起動数が目に見えて増えた経験があります。以来、私は新しい「置き場所」が OS に増えるたびに、機能追加より先に導線追加を検討するようになりました。

iOS 18 で増えた置き場所が、コントロールセンターです。WidgetKit の ControlWidget を使うと、自作のボタンやトグルをコントロールセンター・ロック画面・アクションボタンに配置できます。Rork Max はネイティブ Swift と拡張ターゲットを扱えるため、この領域も指示の出し方さえ押さえれば届きます。

機能としては地味です。ただ、個人開発のアプリが毎日思い出してもらうための装置として、コストに対する効きは良い部類だと考えています。

導線としての位置づけ — 既存の置き場所との違い

すでにホーム画面ウィジェットや App Shortcuts を実装している方向けに、性格の違いを整理します。

観点ホーム画面ウィジェットApp Shortcuts(Siri/Spotlight)ControlWidget
ユーザーの操作コストホーム画面へ移動して視認検索または発話画面右上から一振り(どの画面からでも)
表現力高い(情報表示が主役)低い(テキスト中心)低い(アイコンと1アクション)
向いている機能状態の常時表示名前で呼べる操作反射的に使う単発操作

ControlWidget の本質は「どの画面からでも1スワイプで届く」ことです。表現力を捨てる代わりに到達コストを最小化しています。メモの新規作成、記録の開始・停止、今日の1件を開く——考えずに指が動く類の操作をひとつだけ選んで置く場所です。

リテンションの文脈で言えば、起動のきっかけを OS の一等地に常駐させる意味があります。広告収益で運営しているアプリなら、DAU の底上げはそのまま収益の底上げです。私自身、AdMob 中心で運営してきた経験から、この種の「思い出してもらう装置」への投資は機能追加より回収が読みやすいと感じています。

最小実装 — アプリを開くボタン

ControlWidget はウィジェット拡張ターゲットの中に定義します。もっとも単純な、アプリの特定画面を開くボタンから始めます。

import WidgetKit
import SwiftUI
import AppIntents
 
// コントロールから起動されるインテント。openAppWhenRun でアプリを前面に出す
struct OpenQuickMemoIntent: AppIntent {
    static let title: LocalizedStringResource = "クイックメモを開く"
    static let openAppWhenRun: Bool = true
 
    func perform() async throws -> some IntentResult & OpensIntent {
        // アプリ側は onOpenURL やシーン復元でこの遷移を受ける
        return .result(opensIntent: OpenURLIntent(URL(string: "myapp://quick-memo")!))
    }
}
 
struct QuickMemoControl: ControlWidget {
    var body: some ControlWidgetConfiguration {
        StaticControlConfiguration(kind: "com.example.myapp.quickmemo") {
            ControlWidgetButton(action: OpenQuickMemoIntent()) {
                Label("クイックメモ", systemImage: "square.and.pencil")
            }
        }
        .displayName("クイックメモ")
        .description("どの画面からでもメモ入力を開きます。")
    }
}

ポイントは2つです。openAppWhenRun = true を忘れると、インテントはバックグラウンドで実行されてアプリが前面に出ません。そして深いリンク先(この例では myapp://quick-memo)をアプリ側で受ける実装が別途必要です。コントロールは玄関であって、案内はアプリ本体の仕事です。

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

この記事の続きを読む

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

この記事で得られること
ControlWidgetButton・ControlWidgetToggle・ControlValueProvider の動くコードと、拡張ターゲット構成で Rork Max に指示するときの分割方法
ホーム画面ウィジェット・App Shortcuts と比較した ControlWidget の導線としての位置づけと、リテンション(ひいては広告収益)への効かせ方
コントロールが更新されない・ギャラリーに出ないなど、実装後に必ず一度は踏む詰まりどころの対処
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

ビジネス2026-04-28
Rork アプリの収益モデル比較 — 広告・サブスク・買い切りを実運用の数字で選ぶ
壁紙系アプリの広告運用がピークを迎えた時期の実体験をもとに、Rork アプリの広告・サブスクリプション・買い切りを同一条件で試算し直し、ジャンル別の使い分けと実装の留意点を整理しました。
ビジネス2026-04-28
Rork Max で SwiftUI ネイティブアプリを収益化する — App Store 審査攻略からサブスクリプション設計まで
Rork Max の SwiftUI ネイティブコード生成を活用してiOSアプリを構築し、App Store審査を通過してサブスクリプション収益を得るまでの全工程を、実際のコードと審査対策付きで解説します。
ビジネス2026-04-26
Rork Max は Pro と Plus どっち?3ヶ月の利用ログで決めた選び分け
Rork Max の Pro と Plus は、月のクレジット枠・ビルド優先度・Native API 事前承認・MAU 上限で向き不向きが分かれます。4本のアプリを3ヶ月並行運用した実ログから、どちらを選ぶべきか・いつ切り替えるかを具体的に整理しました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →