Skip to content

iOS 集成准备

概述

优聚智汇 iOS 广告聚合 SDK(UjuAdSdk)提供开屏、激励视频、插屏、横幅、原生信息流五种广告类型,采用与 Android 对齐的工厂方法模式(UjuAdSdk.shared.createXxxAd(viewController:config:)),统一广告对象 UjuAdObjectProtocol,并内置 ADX 自有广告源与三方 ADN 适配器架构。

iOS SDK 当前处于开发推进阶段,正式版本即将发布,敬请期待。本文档基于 SDK 源码事实编写,便于开发者提前了解集成方式。

系统要求

要求
iOS 版本iOS 14.0 及以上
XcodeXcode 14.0 及以上
SwiftSwift 5.9 及以上
Objective-C支持(核心库通过 SPM 产出后被 OC 工程引用)

最低版本以 ios/Package.swift.iOS(.v14)swift-tools-version:5.9 为准。

集成方式

iOS SDK 采用 核心库 SPM + 三方适配器 CocoaPods 的混合集成方式:核心库 UjuAdSdk 通过 Swift Package Manager 管理,三方广告网络 SDK(多为 OC framework)通过 CocoaPods 管理。

方式一:Swift Package Manager(核心库,推荐)

  1. 在 Xcode 中打开 File → Add Packages…
  2. 输入优聚智汇 iOS SDK 仓库地址(请从优聚智汇开发者后台获取)
  3. 选择 UjuAdSdk library 并添加到目标

UjuAdSdk 核心库依赖 swift-protobuf(>= 1.25.0),SPM 会自动解析。

方式二:CocoaPods(三方适配器 SDK)

三方广告网络 SDK 多为 Objective-C framework,建议通过 CocoaPods 引入。在 Podfile 中添加:

ruby
platform :ios, '14.0'

target 'YourApp' do
  use_frameworks!

  # 三方 ADN SDK(按需引入,版本以优聚智汇后台为准)
  # pod 'Ads-CN', '~> 5.x'          # 穿山甲
  # pod 'GDTMobSDK', '~> 4.x'       # 优量汇
end

然后执行:

bash
pod install

适配器架构

iOS SDK 采用与 Android lib_*_adapter 对齐的独立适配器 Package 架构:

适配器 Package对应平台platformId说明
CsjAdapter穿山甲1三方 ADN

ADX 自有广告源

ADX 自有广告源已内置在核心库中,无需额外注册。其内部 DSP 平台标识为 SDK 内部实现细节,开发者无需关注。通过 UjuAdInfo.platformId 获取到的 ADX 广告平台 ID 统一为 100

各适配器为独立 SPM Package,需实现 BaseAdapterFactory 协议,并通过 UjuAdSdk.shared.registerAdapterFactory(_:) 注册:

swift
// 注册适配器工厂(在 start 之前调用)
UjuAdSdk.shared.registerAdapterFactory(CsjAdapterFactory())

项目配置

1. Info.plist 权限与配置

xml
<!-- 允许 HTTP 网络请求(广告素材可能走 HTTP) -->
<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

<!-- ATT 授权:获取 IDFA 用于广告归因(iOS 14+ 必需) -->
<key>NSUserTrackingUsageDescription</key>
<string>需要您的允许来提供更相关的广告内容</string>

2. ATT 授权说明

iOS 14+ 获取 IDFA 需用户授权。SDK 内部会在 start() 阶段异步请求 ATT 推荐授权;开发者也可自行调用 ATTrackingManager.requestTrackingAuthorization 后再 start

appKey 说明

UjuAdInitConfig.appKey 实际是优聚智汇后台分配的 RSA 公钥(与 Android 一致),用于 Setting/Tracking 通信的 RSA/ECB/PKCS1Padding 加密 AES 密钥与 SHA512withRSA 验签。

  • 请从优聚智汇开发者后台获取 RSA 公钥
  • 原样传入,不要自行修改或截断
  • 误用为普通字符串会影响加密链路

下一步

完成准备工作后,请继续阅读 iOS 集成 完成 SDK 初始化与广告加载。

相关链接