アプリの広告で勝手にSHEINへ飛ばされるのはなぜ?仕組みと対処法
公開: 2026年9月30日 / umebo(iCap・iDig ほかの開発元)
アプリを使っているだけなのに、何も押していないのにSafariが開いて、SHEIN(シーイン)のページに飛ばされる。 その正体は、アプリの画面に出ているバナー広告の「自動リダイレクト」です。
アプリ本体の機能ではなく、広告の中身(広告主側が用意したもの)が勝手にリンク先を開いています。 開いたページを閉じて、元のアプリへ戻れば大丈夫です。
umeboのアプリ(動画保存のiCap、画像保存のiDigなど)でも、2026年9月に利用者の方から 「保存した動画を見ている最中、下の広告がSHEINになった瞬間に勝手に飛ばされる」というご報告をいただきました。 このページでは、そのとき実際に教えていただいたURLをもとに、何が起きているのかを 専門知識がなくても分かる説明と、技術者向けの詳しい説明の両方でまとめます。 同じ症状はumebo以外の多くのアプリでも起きうるので、他のアプリで困っている方の参考にもなれば幸いです。
1. まず結論(専門知識がない方向け)
- 原因: アプリ内のバナー広告の中身が、タップされていなくても広告のリンク先を開くように作られている。
- アプリの不具合?: いいえ。アプリの開発者が広告の中身を作っているわけではなく、アプリの中からは止められません。止める方法は、広告配信サービス側でその広告を除外することです。
- 危険?: iPhoneでページが開いただけで、ウイルスが入ったりデータが読まれたりすることは通常ありません。ただし、勝手に開いたページでは何も入力しない・何もインストールしないでください。
- どうすれば?: Safariのタブを閉じて、元のアプリへ戻るだけで大丈夫です。
- 開発元に伝えると役立つこと: 起きたおおよその日時と、開いたページのURL(またはスクリーンショット)。
2. 何が起きているのか(たとえ話)
アプリの画面の下などに出ている広告は、アプリの開発者が1つずつ選んで貼っているわけではありません。 広告の「枠」だけをアプリが用意して、そこに何を出すかは広告配信サービスがその都度決めています。 たとえるなら、駅の看板の「枠」を貸していて、そこに貼られるポスターは広告会社が差し替えている状態です。
今のアプリ広告は、ただの画像ではなく小さなWebページとして表示されます(動きのある広告を出すためです)。 Webページなので、中にプログラム(JavaScript)を入れられます。 本来は「タップされたらリンク先を開く」ように作るべきところを、 「表示された瞬間に、タップされたことにしてリンク先を開く」ように作られた広告が混ざることがあります。 看板のたとえで言えば、前を通っただけで、勝手にお店の中まで連れていかれるようなものです。
3. 実際のURLから分かったこと(技術者向け)
ご報告いただいた例では、何も押していない状態で、まず一瞬 onelink.shein.com/… が表示され、
続けて次のようなURLのページ(SHEINのモバイルサイト)が開きました。
個人を特定しうる計測IDは一部を伏せています。
https://m.shein.com/jp/?onelink=3/3tv99nbkvvdv&url_from=affiliate_af_b_44_69_0&click_id=6abb…&sub_id=mob…&campaign_id=3109252&source_id=id1545081495&placement_id=ffe1…0033&…
| 部分 | 意味 |
|---|---|
onelink.shein.com |
AppsFlyer(アプリ広告の効果を計測する大手サービス)の「OneLink」という、広告のクリックを記録してから行き先へ転送するためのドメイン。 ここを経由した時点で「この広告がクリックされた」と記録される。 |
url_from=affiliate_af_… |
アフィリエイト(成果報酬型の広告)経由でAppsFlyerを通ったことを示す。 |
source_id=id1545081495 |
広告が表示されたアプリのApp Store ID。1545081495はiCapのIDです。 つまりWebサイト内の広告ではなく、iCapのアプリ内広告枠から開かれたことが、SHEIN側の計測にも記録されています。 |
placement_id / sub_id / campaign_id / click_id |
広告ネットワーク側の広告枠・出稿元・キャンペーン・クリック1回ごとのID。 |
広告の中で何が動いているか
アプリ内のバナー広告は、広告SDK(広告を表示するためにアプリへ組み込む部品)が内部に持つWebView(アプリ内の小さなブラウザ)の中で、
HTMLとJavaScriptとして表示されます。モバイル広告の標準規格(MRAID)では、広告からリンク先を開くための
mraid.open(url) が用意されており、これは本来ユーザーがタップしたときだけ呼ぶ決まりです。
自動リダイレクトをする広告は、これをタップ無しで呼びます。イメージとしては次のようなものです
(実際の広告のコードは取得できていないため、仕組みを示すための例です)。
<script>
// 表示されてから少し待って、タップされていないのにリンク先を開く
setTimeout(function () {
if (window.mraid) mraid.open("https://onelink.shein.com/…");
else window.top.location.href = "https://onelink.shein.com/…";
}, 1500);
</script>
SDKは「広告がリンクを開こうとした」としか分からないため、そのままSafari(またはアプリ内のブラウザ画面)でURLを開きます。 アプリ側の広告表示のコードは、広告の枠を置いているだけで、URLを開く処理を持っていません。
なぜそんな広告が作られるのか
一般に、アプリ広告の成果は「クリックされたあと一定期間内に、アプリのインストールや購入が起きたか」で計測されます。 タップ無しで強制的にリンク先を開くと、実際には興味を持っていない人の分まで「クリック」として記録されます。 その後その人が別のきっかけで買い物をしても、成果の一部がその広告の出稿元に結び付けられることがあります。 こうした「強制クリック」は、成果報酬の水増しにつながるため、Google AdMobやAppLovinなど主要な広告配信サービスの 規約では禁止されています。
なお、今回のURLはアフィリエイト経由(url_from=affiliate…)でした。
SHEINの広告として配信されたことは確かですが、自動リダイレクトの仕掛けをSHEIN自身が作ったのか、
間に入ったアフィリエイトや広告会社が作ったのかは、外からは分かりません。
いずれにしても、利用者にとっては「SHEINの広告で勝手に飛ばされた」ことに変わりはありません。
4. Webページの広告とは何が違う?
「アプリ内のブラウザで見ていたサイトの広告が原因では?」と思われるかもしれません。今回の件は次の理由から、アプリ自体の広告枠によるものです。
- 発生したのは、ブラウザ画面ではなく保存した動画を再生している画面だった。
- URLの
source_idがiCapのApp Store IDだった(Webサイトの広告なら、出稿先はそのサイトとして記録される)。 - iCapやiDigのアプリ内ブラウザでは、見ているページのプログラムが勝手にSafariや他のアプリへ移動させることはできない作りにしている。 別ウィンドウで開くリンクは確認のうえ新しいタブで開き、Safariで開くのは「Safariで開く」を押したときだけ。 ページの中の広告が勝手に移動しても、アプリのタブの中で移動するだけです。
5. 飛ばされたときにすること
- 開いたページでは何も入力しない。ログイン・住所・カード番号などは入れないでください。
- Safariのタブを閉じて、元のアプリへ戻る。画面左上の「◀︎(元のアプリ名)」を押すか、ホーム画面からアプリを開き直します。
- SHEINのアプリが入っている場合は、そのアプリが開くこともあります。その場合もそのまま閉じれば大丈夫です。
- 「ウイルスが見つかりました」「当選しました」などの表示が出ても、指示に従わず閉じてください。 構成プロファイルやアプリのインストールを求められても、入れないでください。
- 余裕があれば、起きたおおよその日時と、開いたページのURL(またはスクリーンショット)をアプリの開発元へ送ってください。 開発元が広告配信サービスで該当の広告を探して止める、いちばんの手がかりになります。
アプリを削除する必要はありません。
原因はアプリではなく広告なので、アプリを入れ直しても変わりません。 アプリによっては削除すると保存したデータも消えてしまうので、ご注意ください。
6. umeboのアプリで行った対応
| 日付 | 内容 |
|---|---|
| 2026年9月26日 | iCapの利用者の方から「保存した動画を再生中、下の広告がSHEINになった瞬間、何も押していないのにリンク先へ飛ばされる」とお問い合わせをいただく。 |
| 2026年9月29日 | 発生日時と移動先のURLを教えていただき、URLに含まれるApp Store IDから、iCapの広告枠から開かれたSHEINの広告であることを確認。 |
| 2026年9月30日 | iCap・iDigなどumeboのiOSアプリ全体で使っている広告配信サービス(AppLovin MAX)の広告審査機能(Ad Review)に、
shein.com と m.shein.com へ移動する広告を除外する設定を登録。 |
広告の仕組み上、設定が行き渡るまでに時間がかかったり、別の経路から似た広告が出たりすることがあります。 効果は引き続き確認しており、分かったことがあればこのページを更新します。 もしumeboのアプリでまた同じことが起きたら、日時とURL(またはスクリーンショット)を お問い合わせからお知らせください。
umeboのアプリは広告の収益で無料版を提供していますが、利用者の方が意図しない操作をさせられる広告は、収益よりも止めることを優先します。 ご報告いただいた方に、あらためてお礼申し上げます。
7. アプリ開発者の方へ
自分のアプリで同じ報告を受けた場合、アプリのコードでは止められないため、広告配信サービス側で対処します。
- AppLovin MAX: Ad Review(旧SafeDK)で、リスクのあるコンテンツのルールに移動先ドメインを登録できます(管理画面のほか、Rules Management APIでも登録可)。Auto Redirects Reportで自動リダイレクトの発生状況も確認できます。
- Google AdMob: 「ブロックの管理」から広告主のURL(ドメイン)単位で除外できます。個別の広告は広告審査センターから報告・ブロックできます。
- 利用者から日時と移動先URLをもらえると、URL中の計測パラメータ(
source_id・placement_idなど)から、自分のアプリの広告枠かどうかを確かめられます。