RORK LABEN
TOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しましたTOOLING — Rorkの開発者向けリポジトリが動き続けています。rork-xcodeが7月16日、rork-deviceが7月15日、rork-plistが7月13日に更新されましたOPUS46 — RorkでClaude Opus 4.6が稼働しています。Rork MaxはClaude Codeを土台にアプリを組み立てる設計ですSIM — ブラウザ上で動くクラウドのiOSシミュレータを備え、実機へのインストールは1クリック、App Storeへの提出は2クリックと案内されていますMAX — Rork MaxはReact Nativeではなく純粋なSwiftを出力します。iPhone・iPad・Apple Watch・Apple TV・Vision Pro、そしてiMessageまでが射程ですNATIVE — HealthKit、ARKitとLiDAR、NFC、Dynamic Island、Live Activities、Metalによる3D、Core MLのオンデバイス推論まで扱えますSEED — RorkはLeft Lane Capitalが主導する1,500万ドルのシードラウンドを実施し、Peak XVとa16z Speedrunが参加しました
記事一覧/ビジネス
ビジネス/2026-05-30中級

AdMobの広告ユニットを棚卸しする — App Open広告のクールダウン設計まで

報酬型とインタースティシャルが増えて、どのユニットがどの画面で使われているか分からなくなったときの棚卸し手順と、起動のたびに出てしまうApp Open広告に4時間のクールダウンを入れる設計を、累計5,000万DLの運用経験からまとめます。

AdMob70収益化66App Open2インタースティシャルアプリ運用2

プレミアム記事

どのユニットがどこで出ているのか分からなくなる

累計5,000万ダウンロードの壁紙アプリを長く運用していると、広告ユニットは少しずつ増えていきます。最初はインタースティシャルが一つだけだったのに、A/Bのために二つ目を足し、報酬型を入れ、アプリ起動広告(App Open)を試し……と重ねるうちに、ある日「このユニットIDはどの画面で出ているんだったか」を即答できなくなりました。収益に直結する部分なのに把握が曖昧というのは、運用として危うい状態です。

そこで、機能追加の前に一度きちんと棚卸しをすることにしました。やったことは派手ではありませんが、同じように広告まわりが膨らんできた個人開発者の役に立つと思うので、手順を残しておきます。私は2014年から個人開発を続けていますが、こういう地味な整理こそ後から効いてきます。

まずは grep で全ユニットを洗い出す

AdMobの広告ユニットIDはコード上に文字列で埋まっているので、定義箇所はすぐ見つかります。Androidなら次の一行で十分です。

grep -rn "ca-app-pub" app/src/main/java app/src/main/res

これで、定数として定義しているファイル(私の場合は Globals.javaAdManager.java)と、レイアウトXMLに残っている記述が一気に出ます。出力を眺めて、ユニットIDの末尾数桁をキーに、それぞれが「どこで定義され」「どこから呼ばれているか」を対応づけていきます。

この作業で一番の収穫は、もう使っていない旧バナーユニットの残骸がXMLに残っていたのを見つけられたことでした。コード上は誰も参照していないのに、レイアウトには AdView の定義だけが生き残っていた。こういう「幽霊ユニット」は、棚卸しをしないと永遠に気づきません。放置すると、無効なインプレッションやレイアウト崩れの遠因にもなる落とし穴です。

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

この記事の続きを読む

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

この記事で得られること
grepだけで広告ユニットの定義箇所と呼び出し箇所を突き合わせ、幽霊ユニットを発見できるようになる
App Open広告に「4時間クールダウン」と「初回起動スキップ」を入れる実装コードを手に入れられる
頻度制御とレビュー導線がぶつかって継続率を削る事故を、運用側の判断で防げるようになる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

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

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

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

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

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

関連記事

ビジネス2026-07-05
AdMob の収益が突然「保留」になったら — 無効なトラフィックを個人開発で防ぐ実務メモ
AdMob の無効なトラフィック(Invalid Traffic)で収益が保留されると、原因がわからず不安になります。個人開発で複数アプリを運用する立場から、事故を未然に防ぐ最小構成のコードと、保留が来たときの動き方をまとめました。
ビジネス2026-07-02
Rork Max アプリの広告eCPMを落とさない ATT 許可率の上げ方 — 事前許可プライミングの設計
Rork Max で作った iOS アプリの広告収益は、ATT の許可率で大きく変わります。事前許可プライミング画面の設計・SwiftUI 実装・許可率の計測・AdMob 初期化順序までを、個人開発の実運用視点でまとめました。
ビジネス2026-06-28
リワード広告の報酬を、端末からの合図だけで配らない — Rork(Expo)アプリのSSV検証をWorkerで組む
リワード広告の「視聴完了」を端末側のコールバックだけで信じると、報酬の二重付与やなりすましが起こります。AdMobのサーバーサイド検証(SSV)コールバックをCloudflare Workerで署名検証し、transaction_idで冪等化して報酬を安全に配るまでの実装をまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →