# iOS SKAdNetwork 支持

> 支持 Apple 的 iOS 14 隐私要求，包括 SKAdNetwork 集成和关于处理用户同意的指导。

本指南将介绍 Unity 目前针对程序化合作伙伴提出的关于 Unity Ads 广告竞价逻辑的更改。我们鼓励您定期重新访问本文档，以确保您获得最新的指导信息。

> **Note:**
>
> 所有字段和名称都区分大小写。

## 广告请求更改##bid-request-change

### BidRequest.imp.ext.skadn##impression-ext

如果 DSP 在发布者应用的 `Info.plist` 中至少有一个 `SKAdNetworkItem`，Unity 将在广告请求中包含此对象。此对象提供创建签名所需的信息。

| **字段**       | **类型** | **描述**                                                       | **示例**                               |
| ------------ | ------ | ------------------------------------------------------------ | ------------------------------------ |
| `sourceapp`  | 字符串    | Apple App Store 中的发布者 App ID。应与广告请求中的 app.bundle 值匹配。        | `"sourceapp":"123456789"`            |
| `skadnetids` | 字符串数组  | 在发布者应用 Info.plist\_ 文件中出现的 DSP 特有 `SKAdNetworkItem` 条目的小写列表。 | `"skadnetids": ["dsp1.skadnetwork"]` |
| `versions`   | 字符串数组  | 包含支持的 skadnetwork 版本的字符串数组。取决于操作系统版本和 SDK 版本。                | `"versions":["2.0","2.1","3.0"]`     |

### BidRequest.device.ext.atts##device-ext

Unity 将在 `BidRequest.device.ext.atts` 字段中包含应用追踪授权状态。如需了解此字段的更多信息，请参阅 [Apple 的 API 文档](https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/authorizationstatus)。

| **字段** | **类型** | **描述**                                                       | **示例**     |
| ------ | ------ | ------------------------------------------------------------ | ---------- |
| `atts` | int    | 应用追踪授权状态值。可能的值有：- `0` = 未定
- `1` = 受限
- `2` = 被拒
- `3` = 已授权 | `"atts":2` |

## 广告返回更改##bid-response-change

### BidResponse.seatbid.bid.ext.skadn##seatbid-ext

如果广告请求中包含 `BidRequest.imp.ext.skadn`，DSP 可以在响应中发送 `BidResponse.seatbid.bid.ext.skadn` 对象。如果存在，Unity 将使用此对象的签名进行归因。如需了解更多信息，请参阅 [Apple 的 API 文档。](https://developer.apple.com/documentation/storekit/skadnetwork)

| **字段**             | **类型** | **描述**                                                                                                                                     | **示例**                                                                                                                                         |
| ------------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `signature`        | 字符串    | Apple 指定的 `SKAdNetwork` 签名。                                                                                                                | `"signature": "WOBQQIRTnAcfYzF..."`                                                                                                            |
| `network`          | 字符串    | 签名中使用的广告网络标识符。必须与请求中 `skadnetids` 数组的一项匹配。                                                                                                 | `"network":"5HUO92BLLQ.skadnetwork"`                                                                                                           |
| `version`          | 字符串    | 指定 SKAdNetwork 的版本。                                                                                                                        | `"version":"2.0"`                                                                                                                              |
| `campaign`         | 字符串    | 与 Apple 规范兼容的广告系列 ID。从 2.0 版开始，必须是 `1` 到 `100` 之间的整数，以字符串表示。                                                                               | `"campaign":"83"`                                                                                                                              |
| `itunesitem`       | 字符串    | Apple App Store 中的广告主 App ID。必须与广告返回中的 bid.bundle 匹配。                                                                                      | `"itunesitem":"987654321"`                                                                                                                     |
| `nonce`            | 字符串    | 每个广告返回的唯一 ID。                                                                                                                              | `"nonce":"385c9n44-a9ik-28fd-8247-gjk2efoa56a9"`                                                                                               |
| `sourceapp`        | 字符串    | Apple App Store 中发布者应用的 ID。必须与广告请求中的 `imp.ext.skadn.sourceapp` 匹配。                                                                         | `"sourceapp":"123456789"`                                                                                                                      |
| `timestamp`        | 字符串    | 生成签名时的 Unix 时间（以毫秒为单位）。                                                                                                                    | `"timestamp": "1225091839"`                                                                                                                    |
| `fidelities`       | 对象数组   | 支持 SKAdNetwork v2.2 中引入的多种保真度类型。                                                                                                           | ```text
"fidelities":
[ { 
  "fidelity":0,
  "signature":
  "MEQCIEQlmZRNfYzK…",
  "nonce":"473b1a16…",
  "timestamp":"1603246928149" 
} ]
``` |
| `sourceidentifier` | 字符串    | 广告网络定义的代表广告系列的四位整数。在 SKAdNetwork 4.0 和更高版本中使用，取代了 `BidResponse.imp.ext.skad.` 字段。DSP 必须在 4.0 和更高版本中使用源标识符生成签名。对于 3.0 和更低版本，请继续使用 campaign。 | `"sourceidentifier": "1234"`                                                                                                                   |

### bid.ext.skadn.fidelities##bid-ext

如果广告请求中包含 `BidRequest.imp.ext.skadn`，DSP 可以在响应中发送 `BidResponse.seatbid.bid.ext.skadn` 对象。如果存在，Unity 将使用此对象的签名进行归因。如需了解更多信息，请参阅 [Apple 的 API 文档](https://developer.apple.com/documentation/storekit/skadnetwork)。

| **字段**      | **类型** | **描述**                                                                                                                                  | **示例**                                          |
| ----------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `fidelity`  | int    | 要追踪的归因的保真度类型。                                                                                                                           | `"fidelity": 0`                                 |
| `nonce`     | 字符串    | 每个广告返回的唯一 ID。请参阅 Apple 的文档以了解正确的 [UUID 格式](https://developer.apple.com/documentation/storekit/skstoreproductparameteradnetworknonce)要求。 | `"nonce":"385c9n44-a9ik-28fd-8247-gjk2efoa56a9` |
| `timestamp` | 字符串    | 生成签名时的 Unix 时间（以毫秒为单位）。                                                                                                                 | `"timestamp": "1225091839"`                     |
| `signature` | 字符串    | Apple 指定的 SKAdNetwork 签名。                                                                                                               | `"signature": "MEQCIEQlmZRNfYzK…"`              |

## 设备 ID##device-i-ds

> **Note:**
>
> 如果存在 IDFA，Unity 将传递 IDFA。如果不存在 IDFA，则将传递 IDFV。

| **字段**           | **类型** | **描述**                                                                  | **示例**                                 |
| ---------------- | ------ | ----------------------------------------------------------------------- | -------------------------------------- |
| `Device.ifa`     | 字符串    | 首选的设备广告标识符 (IDFA)。当未授予追踪权限时，其值为 `00000000-0000-0000-0000-000000000000`。 | `ABC123AB-1234-5678-A1B2-123ABCBCD789` |
| `Device.ext.ifv` | 字符串    | 发布者的设备的 IDFV。这是来自同一供应商并在多个应用之间具有唯一性的标识符。                                | `ABCDEFGH-ABCD-1234-1234-ABCDEFGHABCD` |
