Screaming Loud

日々是精進

iOS14におけるSkAdNetwork

以下ドキュメントを読んでのまとめなので、実際まだ動かしていません。

https://developer.apple.com/documentation/storekit/skadnetwork

  • iOS11.3から追加された機能でインストールリファラみたいもの
  • 広告表示時に認証させ、インストールした際に対象のAdNetworkにアプリから直接install postbackをする機能
  • install postbackは24時間以内に返ってくるくるが、ランダムである

https://docs-assets.developer.apple.com/published/f707b3297b/rendered2x-1590201126.png

各ロールの対応

配信側の利用要件

  • 広告配信側がAppleに登録してAdNetworkIDを取得する
  • SDKを提供している場合、配信側はAppleへの認証機構を提供する
  • アプリから直接install postbackが来るので受けれるようにする
    • 受け取ったinstall postbackが正しいか判定する

面のアプリ開発の利用要件

広告主(計測ツール)のアプリ開発要件

  • アプリからくるpostbackを受けとり、正しいか判定する

postbackのjsonのサンプルは以下

    {
      "version" : "2.0",
      "ad-network-id" : "com.example",
      "campaign-id" : 42,
      "transaction-id" : "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
      "app-id" : 525463029,
      "attribution-signature" : "MDYCGQCsQ4y8d4BlYU9b8Qb9BPWPi+ixk\/OiRysCGQDZZ8fpJnuqs9my8iSQVbJO\/oU1AXUROYU="
      "redownload": 1,
      "source-app-id": 1234567891
      "conversion-value: 20
    }

SkAdNetworkの仕組み

registerAppForAdNetworkAttribution() , updateConversionValue(int) はともにinstall postbackのフックである

  • 起動時に registerAppForAdNetworkAttribution()を呼び、Installの起動かを判別
  • 起動時にupdateConversionValue(int)を呼び、installの起動かを判別
    • 上のregisterAppForAdNetworkAttribution は初回しか反応せず、かつ24時間中のいつ発火するかわからない。
    • updateConversionValueが呼ばれると、24時間のランダムタイマーがリセットされる
    • conversion valueはカウントアップのみ
    • 用途は多分cv地点がインストールじゃない場合の

所感

  • 広告を出す面のinfo.plistに各配信業者のIDを埋めなければいけないとなると、DSPなどは計測できない