取り組みの背景:3つのAIツールが変えるアプリ開発の常識
2026年のモバイルアプリ開発において、最もホットな組み合わせが Rork Max × Google Stitch × Antigravity のトリプルAIワークフローです。
それぞれのツールが得意とする領域を組み合わせることで、デザインの初稿からApp Store申請まで、最短1日で完結できる開発体制を構築できます。
- Google Stitch:自然言語から美しいUIデザイン(HTML/CSS)を生成。デザイナーなしでも高品質なビジュアルを作れる
- Google Antigravity:StitchのMCPサーバーと統合し、デザインをコードに変換・補完するAIエージェント環境
- Rork Max:生成されたコードをベースにSwiftUIネイティブアプリを構築し、クラウドMacでコンパイル・App Store申請
ここではヘルスケアアプリを題材に、この3ツールを使ったエンドツーエンドの実践チュートリアルを詳しく解説します。プレミアム限定で、実際のプロンプト集や設計パターン、よくある落とし穴の回避方法まで網羅します。
この記事で学べること:
- Google Stitch + Antigravity MCPの正しいセットアップ方法
- StitchデザインをRork Maxに取り込むベストプラクティス
- 3ツールを連携したサブスクリプション収益化の実装
- パフォーマンス最適化と品質チェックの手順
- App Store申請を通過するための最終確認リスト
対象読者: Rorkの基本操作に慣れており、より本格的なアプリを効率よく作りたい中級〜上級の個人開発者
前提知識・環境準備
必要なツールとアカウント
このワークフローを実践するには、以下の環境が必要です。
| ツール | プラン | 月額コスト(目安) |
|---|---|---|
| Rork Max | Pro以上 | $39〜 |
| Google Antigravity | 無料(2026年3月時点) | $0 |
| Google Stitch | 無料(API制限あり) | $0〜 |
| Apple Developer Program | 必須(App Store申請) | $99/年 |
重要: Rork MaxはReact Native版のRorkとは別プロダクトです。SwiftUIネイティブコードを生成するため、Rorkの料金プランの解説記事をあらかじめ確認しておきましょう。
Google StitchのMCPサーバーをAntigravityに追加する
StitchはAntigravityのMCPストアに正式対応しています。
- ai.google.dev/antigravity にアクセスしてAntigravityを開く
- 左サイドバーの「MCP Servers」→「+ Add Server」をクリック
- 検索フォームに「Stitch」と入力して公式MCPを選択
- Stitch側でAPIキーを発行:Stitch アプリ → Exports パネル → 「Get API Key」
- Antigravity の設定フォームにAPIキーを貼り付けて「Connect」
// Antigravity MCPの設定例(settings.json)
{
"mcpServers": {
"stitch": {
"name": "Google Stitch",
"apiKey": "YOUR_STITCH_API_KEY",
"tools": [
"generate_screen",
"edit_screen",
"export_html_css",
"create_variant"
]
}
}
}接続後、Antigravityのプロンプトから @stitch でStitchの機能を直接呼び出せます。
概念と設計思想:なぜこの3ツール組み合わせが実用的なのか
従来の開発フローとの比較
従来のノーコード開発では、デザイン → コード変換 → ネイティブ化という3段階がそれぞれ分断されていました。Figmaでデザインを作り、FlutterFlowやAdaloにインポートし、ネイティブ機能は別途実装する...という作業で数日かかっていた工程が、このトリプルAIワークフローでは大幅に短縮されます。
【従来フロー】
Figma(デザイン)→ 手動コード変換 → FlutterFlow/React Native → ネイティブ化
所要時間: 3〜7日
【新ワークフロー】
Google Stitch(AIデザイン)→ Antigravity(コード変換・補完)→ Rork Max(ネイティブSwiftUI)
所要時間: 4〜8時間
各ツールの役割分担
Google Stitchは「ビジュアルデザインのAIエンジン」として機能します。テキストプロンプトから、色彩設計・タイポグラフィ・コンポーネント配置まで整ったUIを生成します。特にカラースキームやスペーシングの一貫性が高く、デザインシステムを持たない個人開発者にとって強力な味方です。
Antigravityは「AIコードエージェント」として、StitchのデザインをリアルタイムでReact Native/SwiftUIコードに変換します。MCPサーバー統合により、Stitch内のデザインを直接参照しながらコード生成できるため、デザインと実装の乖離が生じにくいのが最大の特徴です。
Rork Maxはこのパイプラインの最終ステージで、「ネイティブSwiftUIコンパイル環境」として動作します。AntigravityからエクスポートしたコードをRork Maxのプロジェクトにマージし、クラウドMacでビルド・シミュレーション・App Store申請までワンクリックで完結します。
詳細な比較はRork vs FlutterFlow完全比較やRork Max AI機能ガイドもあわせてご覧ください。
ステップバイステップ実装:ヘルスケアアプリを作る
Step 1:Google Stitch でメイン画面をデザインする
Stitch を開き、以下のプロンプトを入力します。
Create a health tracking app UI with:
- Home screen: daily step count, calorie intake, water intake with circular progress rings
- Color scheme: white background, mint green (#00C896) as primary, dark gray (#1A1A2E) for text
- Typography: SF Pro Display for headings, SF Pro Text for body
- Bottom navigation: Home, Nutrition, Workout, Profile tabs
- Card-based layout with subtle shadows (8px blur, 10% opacity)
- iOS 17+ style with rounded corners (16px radius)
生成されたデザインが要件に合っていない場合は、スクリーン編集機能で細部を調整します。
// Stitch MCPを使ったAntigravity内からの操作例
@stitch edit_screen "home_screen" --instruction "Make the step count ring bigger and add a weekly trend sparkline below it"
Step 2:Antigravity でデザインをコードに変換する
StitchのデザインがMCPで連携されたAntigravityで、以下のプロンプトを実行します。
Using the @stitch "health_app_home" design, generate SwiftUI code for:
1. HomeView with CircularProgressView components for steps, calories, water
2. Use @Observable macro for state management (iOS 17+)
3. Implement smooth animations using withAnimation(.spring(duration: 0.5))
4. Add HapticFeedback on ring completion
5. Data model: HealthMetric struct with id, type, value, goal, date
Antigravityが生成するSwiftUIコードの例:
// AntigravityがStitchデザインから生成したCircularProgressViewの例
import SwiftUI
struct CircularProgressView: View {
let value: Double // 現在値(例: 6500歩)
let goal: Double // 目標値(例: 10000歩)
let color: Color // リング色
let label: String // ラベル("Steps"など)
private var progress: Double {
min(value / goal, 1.0)
}
var body: some View {
ZStack {
// 背景リング
Circle()
.stroke(color.opacity(0.15), lineWidth: 12)
// 進捗リング
Circle()
.trim(from: 0, to: progress)
.stroke(
color,
style: StrokeStyle(lineWidth: 12, lineCap: .round)
)
.rotationEffect(.degrees(-90))
.animation(.spring(duration: 0.8), value: progress)
// 中央テキスト
VStack(spacing: 2) {
Text("\(Int(value))")
.font(.system(size: 22, weight: .bold, design: .rounded))
.foregroundStyle(.primary)
Text(label)
.font(.caption2)
.foregroundStyle(.secondary)
}
}
.frame(width: 100, height: 100)
}
}
// 期待する出力: 滑らかなアニメーションで進捗が表示されるリング
// 値が変化するたびにspringアニメーションで更新されるStep 3:Rork Max にコードをマージしてプロジェクトを構築する
Rork Maxのプロジェクトを新規作成し、Antigravityで生成したコードをインポートします。
- Rork Max で「New Project」→「Import from code」を選択
- Antigravityからエクスポートした
.swiftファイルをドラッグ&ドロップ - Rork Maxが自動でプロジェクト構造を整理し、不足コンポーネントを補完
Rork Max のチャット欄で追加実装を指示します:
Add these features to the health app:
1. HealthKit integration to read real step count and calorie data
2. UserNotifications for daily reminders at 8:00 AM
3. Core Data persistence for storing historical data (last 30 days)
4. StoreKit 2 for premium subscription ($4.99/month, $39.99/year)
- Premium features: detailed analytics, unlimited history, export to CSV
Step 4:サブスクリプション課金の実装(StoreKit 2)
Rork Maxが生成するStoreKit 2の実装コード:
// Rork MaxのAIが生成するSubscriptionManager
import StoreKit
@Observable
class SubscriptionManager {
var isPremium: Bool = false
var products: [Product] = []
// App Store Connect で設定したProduct ID
let productIDs = [
"com.yourapp.health.monthly", // $4.99/月
"com.yourapp.health.yearly" // $39.99/年(約33%割引)
]
init() {
Task {
await loadProducts()
await updateSubscriptionStatus()
}
}
func loadProducts() async {
do {
products = try await Product.products(for: productIDs)
} catch {
print("Failed to load products: \(error)")
}
}
func purchase(_ product: Product) async throws {
let result = try await product.purchase()
switch result {
case .success(let verification):
let transaction = try checkVerified(verification)
await transaction.finish()
await updateSubscriptionStatus()
case .userCancelled, .pending:
break
@unknown default:
break
}
}
func updateSubscriptionStatus() async {
for await result in Transaction.currentEntitlements {
guard case .verified(let transaction) = result else { continue }
if productIDs.contains(transaction.productID) {
isPremium = transaction.revocationDate == nil
}
}
}
private func checkVerified<T>(_ result: VerificationResult<T>) throws -> T {
switch result {
case .unverified:
throw StoreError.failedVerification
case .verified(let safe):
return safe
}
}
}
enum StoreError: Error {
case failedVerification
}
// 使い方:
// @Environment(SubscriptionManager.self) var subscriptionManager
// if subscriptionManager.isPremium { /* プレミアム機能を表示 */ }Step 5:App Store申請の準備とRork Maxでのビルド
// Rork Maxに指示するApp Store準備チェックリスト
1. Build for release (Rork Max → Build → App Store)
2. Add App Privacy manifest (PrivacyInfo.xcprivacy)
3. Set required usage descriptions in Info.plist:
- NSHealthShareUsageDescription: "歩数・カロリーを読み取りヘルスデータを表示します"
- NSHealthUpdateUsageDescription: "ワークアウトデータを記録します"
- NSUserNotificationsUsageDescription: "毎日の健康リマインダーを送信します"
応用パターン:3ツール連携を最大限に活用する
パターン1:AIによるUIバリアントテスト
StitchのMCPを使い、複数のUIバリアントを素早く生成してA/Bテストに活用できます。
// Antigravityからのバリアント生成
@stitch create_variant "onboarding_screen" --variants 3 --style "minimal, playful, corporate"
生成された3パターンをそれぞれRork Maxでビルドし、TestFlightで少数ユーザーに配布してコンバージョン率を比較します。この手法はTestFlightガイドと組み合わせることで、仮説検証サイクルを大幅に短縮できます。
パターン2:デザインシステムの再利用
Stitch で作ったデザインシステムは、MCPツールを通じてコンポーネントライブラリとして保存できます。新しい画面を追加するたびに一から指示する必要がなく、@stitch use_design_system "health_app_ds" と指定するだけで一貫したビジュアルを維持できます。
パターン3:Rork Max + Cloudflare Workers バックエンド
フロントエンドをRork Maxで構築しつつ、バックエンドAPIをCloudflare Workersで実装する組み合わせも強力です。
// Cloudflare Worker: HealthData APIエンドポイント例
export default {
async fetch(request, env) {
const url = new URL(request.url);
if (url.pathname === '/api/health/sync' && request.method === 'POST') {
const { userId, metrics } = await request.json();
// Cloudflare KVに保存(高速read)
await env.HEALTH_KV.put(
`user:${userId}:metrics`,
JSON.stringify({ metrics, updatedAt: Date.now() }),
{ expirationTtl: 86400 * 30 } // 30日間保存
);
return Response.json({ success: true });
}
return new Response('Not Found', { status: 404 });
}
};詳細はRork Max + Cloudflare AIバックエンド完全ガイドを参照してください。
トラブルシューティング:よくある問題と解決法
問題1:StitchのデザインがAntigravityで正しく参照されない
原因: MCPサーバーのAPIキー期限切れ、またはStitch画面のIDが変更されている
解決法:
- AntigravityのMCP設定でStitchのAPIキーを再発行・更新
@stitch list_screensでスクリーンID一覧を確認してからコード生成
問題2:Rork MaxへのSwiftUIコードインポートで型エラーが発生する
原因: AntigravityがiOS 16以前の古いAPIを使用するコードを生成することがある
解決法:
// Antigravityへの追加指示
"Ensure all generated code targets iOS 17+ minimum.
Use @Observable instead of ObservableObject+@Published.
Use SwiftData instead of Core Data where possible."
問題3:HealthKitデータが実機でnilになる
原因: HealthKitのUsage Descriptionがplistに正しく記載されていない
解決法: Rork MaxのInfo.plistエディタでNSHealthShareUsageDescriptionの値を確認。App Store審査でも引っかかる項目なので必ず設定します。
問題4:StoreKit 2の購読状態がアプリ再起動後にリセットされる
原因: Transaction.currentEntitlementsの監視処理がAppのinit()で呼ばれていない
解決法:
@main
struct HealthApp: App {
@State private var subscriptionManager = SubscriptionManager()
var body: some Scene {
WindowGroup {
ContentView()
.environment(subscriptionManager)
// アプリ起動時に購読状態を自動確認
.task {
await subscriptionManager.updateSubscriptionStatus()
}
}
}
}公開・収益化のポイント
App Storeのペイウォール設計
プレミアムサブスクリプションのコンバージョン率を高めるには、価値を先に見せるフリーミアムモデルが有効です。
- 無料機能でフックを作る: 基本的な歩数・カロリー記録は無料で提供
- プレミアムの価値を体感させる: 7日間のフルトライアルを自動付与(StoreKit 2の
.introductoryOfferを活用) - ペイウォールの表示タイミング: 機能制限に自然に触れる瞬間(7日目の履歴確認時など)
App Store Connectでのサブスクリプション設定
App Store Connect 設定手順:
1. App Store Connect → 「マイApp」→ 対象アプリ → 「サブスクリプション」
2. 新規サブスクリプショングループを作成(例: "Premium")
3. 月額プラン: 価格 ¥750($4.99)、ID: com.yourapp.health.monthly
4. 年額プラン: 価格 ¥6,100($39.99)、ID: com.yourapp.health.yearly
5. 紹介オファー: 7日間無料試用を設定
6. App Store プロモーションイメージ(1024×1024)をアップロード
収益目標の試算
月額$4.99、年額$39.99の場合、月100人の有料転換でのシミュレーション:
- 月払い80人 × $4.99 = $399.20
- 年払い20人 × $39.99/12 = $66.65
- 月次MRR: 約 $465(約7万円)
- App Store手数料30%控除後: $325/月(約4.9万円)
初月から数百ユーザーを獲得するためのASO戦略については、グローバルASO完全ガイドを参照してください。
まとめ
Rork Max × Google Stitch × Antigravity のトリプルAIワークフローは、2026年現在最も効率的なネイティブアプリ開発手法の一つです。
このワークフローの核心は「AIツールの役割分担」にあります。デザインの美しさをStitchに、コード変換の正確さをAntigravityに、ネイティブコンパイルと申請をRork Maxに委ねることで、各ツールの強みを最大限に引き出せます。
今すぐ始める3ステップ:
- AntigravityにStitch MCPサーバーを追加する(所要時間:10分)
- Stitchで作りたいアプリの主要画面を2〜3枚生成する(所要時間:30分)
- Antigravityでコードを生成し、Rork Maxにインポートする(所要時間:1〜2時間)
ヘルスケア・フィットネス・生産性・エンタメなど、どのジャンルでもこのワークフローは有効です。ぜひ今日から試してみてください。