RORK LABEN
MAX — Rork MaxがネイティブSwiftアプリを生成。iPhone・iPad・Watch・TV・Vision Pro・iMessageに対応しますNATIVE — AR/LiDARスキャン、Metalの3Dゲーム、ウィジェット、Live Activities、Core MLまで踏み込めますFUNDING — Rorkがa16zから$2.8Mを調達。月間74.3万訪問・成長率85%と勢いがありますPRICING — 無料で開始でき、有料プランは月額$25から利用できますFLOW — アイデアを英語で説明すると動くコードを生成。共有リンク発行やiOS/Androidビルドに対応しますCOMPARE — 従来のRorkはExpo/React Nativeでクロスプラットフォーム。用途で使い分けられますMAX — Rork MaxがネイティブSwiftアプリを生成。iPhone・iPad・Watch・TV・Vision Pro・iMessageに対応しますNATIVE — AR/LiDARスキャン、Metalの3Dゲーム、ウィジェット、Live Activities、Core MLまで踏み込めますFUNDING — Rorkがa16zから$2.8Mを調達。月間74.3万訪問・成長率85%と勢いがありますPRICING — 無料で開始でき、有料プランは月額$25から利用できますFLOW — アイデアを英語で説明すると動くコードを生成。共有リンク発行やiOS/Androidビルドに対応しますCOMPARE — 従来のRorkはExpo/React Nativeでクロスプラットフォーム。用途で使い分けられます
記事一覧/開発ツール
開発ツール/2026-06-27上級

無料プレビューがスクショで丸ごと持ち出される前に — Rork/Expo でスクリーンショットと画面収録を検知して目隠しする設計

Rork/Expo アプリで有料プレビュー画像をスクリーンショットと画面収録から守る実装。expo-screen-capture の限界、isCaptured のネイティブ監視、iOS/Android の差を踏まえた目隠し設計を解説します。

Rork464Expo116React Native189セキュリティ12個人開発163

プレミアム記事

無料プレビューとして1枚だけ見せたかった有料の壁紙が、スクリーンショットで原寸のまま持ち出される。画像を主役にしたアプリを個人開発で長く運営していると、この「気軽な持ち出し」は避けて通れない悩みになります。私自身、プレビュー画質を落として対策したつもりでも、Retina 解像度のスクショは実用に十分な品質で、ほとんど無意味だったという経験があります。

ここで考えたいのは、完璧な防御ではありません。撮影そのものを技術的に封じ込めるのは、少なくとも iOS では不可能です。それでも「ワンタップで全部持っていける」状態を、「少し手間がかかる」状態に変えるだけで、漏れの大半は減らせます。ここで整理するのは、Rork が生成する Expo アプリに後付けできる、スクリーンショットと画面収録の検知・目隠しの実装です。本番運用で詰まった箇所、つまり実際の落とし穴まで含めて見ていきます。

守れるのは「気軽な持ち出し」まで、と最初に割り切る

実装に入る前に、期待値を正しく置くことが何より大事だと感じています。これは DRM ではありません。本気で画像を抜こうとする人は、別の端末で画面を物理的に撮影すれば、こちらが何をしようと止められません。

ですから目的は「悪意のない、あるいはごく軽い気持ちの持ち出しを思いとどまらせること」に絞ります。私の場合、守りたいのは収益のうちの数パーセントの漏れであって、要塞を建てることではありません。この線引きを最初にしておかないと、検知をすり抜ける方法をいくつも想像しては実装が肥大化し、個人開発の時間が溶けていきます。抑止としての費用対効果が成り立つ範囲に留める、という判断をまず固めておきます。

iOS と Android で「できること」がまるで違う

最初に混乱したのは、iOS と Android で取れる手段が対称ではない点でした。整理すると次のようになります。

やりたいことiOSAndroid
撮影・録画そのものを止める不可(OS が許可していません)可(FLAG_SECURE
スクショされた「事実」を受け取る可(システム通知)原則不可
録画・ミラーリング中を検知可(isCaptured限定的

つまり Android は「そもそも撮れなくする」方向が素直で、iOS は「撮られたら気づいて反応する」方向しか選べません。この非対称を踏まえると、両プラットフォームで同じコードに寄せようとするのは筋が悪く、それぞれの土俵で別の手を打つのが結局いちばん簡潔になります。

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

この記事の続きを読む

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

この記事で得られること
expo-screen-capture では拾えない『録画・ミラーリング中』を、isCaptured のネイティブ監視でリアルタイムに目隠しできるようになる
iOS と Android で『検知できること・できないこと』を切り分け、FLAG_SECURE と検知オーバーレイを適材適所で使い分けられる
個人開発のプレミアム画像アプリで、無料プレビューの流出を『DRMではなく現実的な抑止』として実装する判断軸が手に入る
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

開発ツール2026-06-20
Rork が直せるバグと自分で直すバグを見分ける — エクスポートコードのトリアージ手順
Rork が自力で直すバグと、エクスポートしたReact Native/Expoコードを自分で手当てすべきバグを切り分けるトリアージ手順を、動くコードとともに整理しました。
開発ツール2026-06-27
Rork の共有リンクで配布前に実機差分を潰す手順 — プレビューで気づけない不具合の検証順
Rork のエディタプレビューは整った環境で動くため、実機でしか出ない不具合を見逃します。共有リンクで配布する前に潰すべき7つの実機差分と検証の順番、仕込んでおくコードを実体験からまとめました。
開発ツール2026-06-26
Rorkのアプリで音をバックグラウンド再生し、ロック画面から操作できるようにする
Rorkが生成したExpoアプリで音楽やヒーリング音をバックグラウンド再生し、ロック画面・コントロールセンターから操作できるようにするまでを、expo-audioの実装コードと落とし穴つきでまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →