iPhoneアプリに広告を導入した過程で参考にした情報のまとめ

# はじめに

自分が開発した iOS アプリに**広告を導入する過程で参考にした情報をまとめ**ました。
**収益化**を目指し、これから初めて**自分のアプリに広告を導入する予定という方の参考に**なれば幸いです。

# アドネットワークの比較

「広告を出したい**広告主**」と、「広告を掲載する場所(アプリやウェブサイト)を提供する**媒体主**」を繋げる仕組み・サービスのことを、**アドネットワーク (Ad Network)**と呼びます。自分のアプリに広告を導入する際は、まずはどのアドネットワークを利用するかを決める必要があります。

例えば、以下のようなアドネットワークが存在します。

* [Google AdMob](https://admob.google.com/)
* [Facebook Audience Network](https://ja-jp.facebook.com/audiencenetwork/)
* [Unity Ads](https://unityads.jp/)

私は**以下のページ👇を参考**に、どのアドネットワークを利用するか決めました。

* [スマホのアドネットワーク（広告）を一覧から比較する！](https://deaimobi.com/mbnk-273/)
* [Best App Monetization Software](https://www.g2.com/categories/app-monetization)
* [THE BEST APP AD NETWORKS FOR 2021](https://www.monetizemore.com/best-app-ad-networks/)

検討の結果、私のアプリでは **Google AdMob を利用**しています。

* **理由1: 👏評判が良い👏**
  - 上記のページなどで、 Google AdMob は好評価でした。
* **理由2: 📚利用者が多くインターネット上に知見が多く蓄積されている📚**
  - 例: Qiita 上に記事が多い
      - "AdMob"で検索すると、ヒットする記事は483件
         - 2021年5月25日調べ
      - 他のアドネットワークに関する記事の数はこれより少なかった

# AdMob の導入

AdMob を利用するには、まず自分のアプリを AdMob とリンクさせる必要があります。

設定方法は Google AdMob の公式ページに記載されています。

* [Google AdMob ヘルプ: AdMob（ベータ版）でアプリを設定する](https://support.google.com/admob/answer/9989980?visit_id=637568536873941041-2764816937&rd=1)

AdMob でアプリが見つからずリンクできない場合の対応方法については、以下の記事👇にまとめています。

https://qiita.com/hide-snow/items/61c0a877b49b2673e913

## app-ads.txt の設置

悪意を持った第三者が人気アプリになりすまし広告費を不正に騙しとられる、またなりすまされたアプリの悪評により広告枠の価値が下がり広告収益が減少してしまうことがあります。
そういった被害を防ぐために、 **`app-ads.txt` をあなたの管理するウェブサイトに配置することが推奨**されています。

`app-ads.txt` については以下のページ👇で説明されています。

https://support.google.com/admob/answer/9787936

https://jp.applovin.com/blog/6113/

**`app-ads.txt` の設置方法は以下のページ👇で説明**されています。

https://support.google.com/admob/answer/9363762

上記ページに記載のとおり、 Apple の App Store の場合は**マーケティング URL 欄**に `app-ads.txt` を配置するウェブサイトの URL を記入します。

私は、 Google Domains で取得した独自ドメインのサブドメイン配下に `app-ads.txt` を配置しました。その方法については、以下の記事👇にまとめました。

https://qiita.com/hide-snow/items/e7d8c3f146513a55ae18

## SwiftUI への導入

* [Google AdMob 公式: スタートガイド](https://developers.google.com/admob/ios/quick-start)
  * このガイドの手順に従って、 Mobile Ads SDK のインポート、及び `Info.plist` を更新しました。
     * Mobile Ads SDK のインポートには、 CocoaPods を使用しました
     * CocoaPods のインストールは、 [CocoaPods の公式のガイド](https://guides.cocoapods.org/using/getting-started#installation)に従い `gem` を使いました。
     * `Podfile` という名前のファイルを手動で作成し、以下の内容を記述しました。
        * `YourProjectName` はあなたの project 名に置換してください。

```Podfile
target 'YourProjectName' do
  pod 'Google-Mobile-Ads-SDK'
end
```

SwiftUI で実装したアプリに広告枠を導入する際は、以下のページ👇を参考にしました。

* [AdMob(アドモブ)広告の実装方法](https://tomato-develop.com/swiftui-admob-how-to-implement-banner-reworded/)
* [iPad OSでAdMobテスト広告が表示されない場合の対処方法](https://thwork.net/2020/11/17/%E3%80%90swiftui%E3%80%91ipad-os%E3%81%A7admob%E3%83%86%E3%82%B9%E3%83%88%E5%BA%83%E5%91%8A%E3%81%8C%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%E5%A0%B4%E5%90%88%E3%81%AE%E5%AF%BE%E5%87%A6/)

# ATT 対応

ATT 対応のために以下のページを参考にしました。

* [[SwiftUI]サクッと実装するATT(AppTrackingTransparency)](https://www.choge-blog.com/programming/swiftui%e3%82%b5%e3%82%af%e3%83%83%e3%81%a8%e5%ae%9f%e8%a3%85%e3%81%99%e3%82%8battapptrackingtransparency/)
  - `NSUserTrackingUsageDescription` は私のアプリでは以下のような文言にしました。
      - 英語: `To avoid random ads, this data will be used to to personalize the ads delivered to you.`
      - 日本語: `「許可」を押すと、よりお客様に適した広告が表示されます。`

* [iOS10から必要になったユーザデータにアクセスする為に表示する文言をローカライズする](https://qiita.com/mfks17/items/2d7eddf1ea49d37a53bb)
  - `Info.plist` の多言語化対応方法については、この記事を参考にしました。

# App Store Connect において App のプライバシーの更新

アプリをリリースする前に、 App Store Connect においてあなたのアプリのプライバシー情報を説明する必要があります。

Google Mobile Ads SDK が収集する情報は以下のページ👇に記載されています。

https://developers.google.com/admob/ios/data-disclosure?hl=ja

以下のページ👇では、 App Store Connect におけるプライバシー情報の入力例がスクリーンショット付きで説明されており、とても参考になりました。

http://blog.be-style.jpn.com/article/188345250.html