Rork を使い始めた最初の数日間は、正直なところ「魔法みたいだ」と感じます。プロンプトを書くだけでアプリの画面が生成されて、ボタンが動いて、データが保存される。それが現実になるのを見るのは、何度体験しても少し信じられない気持ちになります。
でも、だいたい1週間ほどで現実に気づきます。「あれ、思った通りに動かない」「これどうすればいい?」という瞬間が来るんです。
私がこれまで Rork でいくつかのアプリを作り、周りの開発者の様子を見てきた経験から言うと、初心者がぶつかる壁にはパターンがあります。今日はその「3つの壁」と、私が実際に乗り越えた方法を正直にお話しします。
第1の壁:プロンプトを書いても、思った通りのアプリができない
これが最初の、そして最もよくある壁です。「ユーザーがメモを登録できるアプリを作って」と入力したのに、なぜか画面のデザインが意図と全然違う、機能が半分しか実装されていない、というケースです。
なぜ起きるか
Rork の AI は確かに優秀ですが、あくまで「書いてあること」しか作れません。私たちが「メモアプリ」と言うとき、頭の中にはカテゴリ分け、検索、共有ボタン、削除確認ダイアログなど、たくさんのイメージがあります。でも AI にはそれが見えないんです。
伝わらないのは能力の問題ではなく、情報量の問題です。
乗り越えた方法
プロンプトを書くとき、私は「スマホアプリの仕様書を書く」くらいの気持ちで書くようにしました。具体的には次の3つを必ず含めるようにしています。
① 画面の構成を書く
・ホーム画面: メモの一覧表示(タイトルと作成日時)、右下に追加ボタン
・詳細画面: タイトル・本文・カテゴリの3フィールド、右上に保存・削除ボタン
・カテゴリは仕事/個人/アイデアの3種類をドロップダウンで選択
② 動作の例を書く
・追加ボタンを押すと詳細画面が開く(新規作成モード)
・一覧の項目をタップすると詳細画面が開く(編集モード)
・削除ボタンを押すと「削除しますか?」の確認ダイアログを表示
③ デザインの方向性を一言加える
・シンプルで落ち着いたデザイン、メインカラーはグレーベース
これだけで、生成結果の精度がかなり上がります。最初から全部完璧に書こうとする必要はありません。むしろ、一度生成してから「ここをこう直して」と続けて修正していく方が効率的です。
大切なのは、何回かのやり取りで形にしていくという感覚を持つことです。Rork との会話は、一発で完成させるものではなく、彫刻のように少しずつ削り出していくものだと思うと、焦りが減ります。
第2の壁:Rork Companion で動いていたのに、実機だと動かない
「できた!」とテスト画面で確認して、実際の iPhone に入れてみたら動かありません。このときの落胆は結構きついですよね。私も最初はかなり戸惑いました。
なぜ起きるか
Rork Companion はシミュレーターに近い環境で動作しています。実機では、カメラや位置情報・通知など、OS の「許可」が必要な機能が制限されます。また、ネットワーク環境の違いや、API キーの設定漏れが問題になることもあります。
乗り越えた方法
実機テストで詰まったとき、私が最初に確認するのはこの3点です。
① 権限の許可設定が正しく書かれているか
カメラを使うアプリなら NSCameraUsageDescription、位置情報なら NSLocationWhenInUseUsageDescription が app.json に書かれているか確認します。Rork に「カメラを使う機能を追加して」とプロンプトを書いたとき、この設定が自動で追加されないケースがあります。
// app.json の infoPlist に追加
"infoPlist": {
"NSCameraUsageDescription": "写真を撮影してプロフィール画像に設定するために使用します",
"NSPhotoLibraryUsageDescription": "フォトライブラリから画像を選択するために使用します"
}② 環境変数(API キー)が設定されているか
process.env.EXPO_PUBLIC_API_KEY のような変数を使っている場合、Rork Companion では問題なく動いても、EAS Build でビルドした実機版には変数が含まれていないことがあります。Rork の設定画面や EAS の環境変数設定を確認しましょう。
③ ネットワークリクエストが HTTPS かどうか
iOS では HTTP(暗号化なし)の通信がデフォルトでブロックされます。API を呼んでいる場合は URL が https:// で始まっているか確認してください。
実機テストは「バグを見つける場所」だと割り切るようにしました。Companion で完成させてから実機でテストする、という順番を徹底するだけで、かなりストレスが減ります。
第3の壁:App Store 審査でリジェクトされる
一番メンタルにくる壁がこれです。「ついに完成した!」と思って審査に出したら数日後に却下通知が来る。
リジェクト理由はいくつかのパターンに集中していて、知っておくだけで防げるものがほとんどです。
よくあるリジェクト理由とその対策
① Guideline 4.0 — Design(デザイン品質の問題)
Rork で生成されたデフォルトのままで申請すると、「UI が未完成」「プレースホルダーテキストが残っている」「アイコンが低品質」という理由でリジェクトされることがあります。
対策として、申請前に以下を確認します。
- アプリアイコンが 1024×1024px の高解像度か
- 「テキストを入力してください」「ここに説明」のようなプレースホルダーが残っていないか
- ダミーデータ・テスト用のデータが本番画面に残っていないか
② Guideline 2.1 — Performance(機能停止・クラッシュ)
審査担当者がテスト中にクラッシュすると、ほぼ確実にリジェクトされます。特に「ユーザーアカウントが必要なアプリ」では、審査用のデモアカウント情報(メールアドレス・パスワード)をメタデータに記載する必要があります。これを忘れると「ログインできない = 動作未確認」でリジェクトされます。
③ Guideline 5.1.1 — Data Collection and Storage(プライバシー)
ユーザーデータを収集する場合、プライバシーポリシーの URL が必要です。また、App Store Connect の「アプリのプライバシー」セクションで、収集するデータの種類を正確に申告する必要があります。Rork で認証機能を実装している場合は、メールアドレスの収集を申告し忘れないようにしましょう。
私のおすすめは、申請の前日に Apple の審査ガイドライン の主要項目を一度読み返すことです。読み慣れると30分かからずチェックできます。
3つの壁を振り返って
今思えば、この3つの壁はすべて「情報が足りなかった」ことで起きていました。プロンプトの情報不足、権限設定の知識不足、審査ルールの理解不足。逆に言えば、知識を積み上げていけば確実に乗り越えられる壁でもあります。
Rork の使い方をもっと深く学びたい方には、Rork で30分で作る最初のアプリがスタート地点として役立つはずです。また、App Store への申請手順の全体像はApp Store 公開の完全ガイドにまとめています。
一番伝えたいことは、詰まったときに「自分には向いていない」と思わないでほしい、ということです。この3つの壁は、ほぼすべての Rork ユーザーが経験しています。通過儀礼だと思って、ひとつひとつ乗り越えていきましょう。
Rork でのアプリ開発をさらに加速させたい方は、プレミアムコンテンツも充実していますので、ぜひメンバーシップページも覗いてみてください。