chinese_sdk_ios_transition_guide - unity-cn/unityads-help-cn GitHub Wiki
Unity Ads SDK 2.0 并不与 Unity Ads SDK 1.5 API 兼容. 但是两个版本的思想大同小异. 在您的游戏开始时, 您使用 Game ID 初始化 Unity Ads. 您想要展示广告是, 需要先检查广告可用性. 如果有可用的广告, 就可以展示啦.
Unity Ads 只初始化一次. SDK 2.0 拥有一套更可靠的网络重连机制, 所以您可以在没有网络的情况下初始化, 一旦再有网络可用了, SDK会安全的请求广告.
新的initialize
取代了旧的startWithGameId
用于SDK 2.0的初始化. 测试模式开关必须以参数的形式传给initialize
方法, 过去的setTestMode
方法被移除了. UnityAdsDelegate
实例对象可以作为参数传入initialize
方法, 而不是必须使用setDelegate
了.
Zone 和 Placement 同样是指广告位.
不再需要预先设置广告位ID了, 而是需要在每次检查isReady
或者想要show
的时候传入广告位ID.
新的SDK中应该使用isReady
和getPlacementState
来代替之前的canShow
. isReady
会返回一个布尔型变量, 而getPlacementState
则会返回更详细的广告位状态信息. 如果一个广告位没准备好, getPlacementState 会告诉开发者它是在 等待(waiting (caching)), 关闭了 (disabled) 又或是 没有填充 (fill).
Unity Ads SDK 2.0 的展示 (show) 方法 需要一个 ViewController 对象作为参数. 这个 ViewController 即是会用于展示广告的 ViewController.
在广告位准备好广告用于展示的时候, unityAdsReady
方法取代了过去的与初始化状态有关的unityAdsFetchCompleted
和unityAdsFetchFailed
回调方法, unityAdsReady
回调方法会携带一个广告位 ID, 之后开发者就可以展示广告啦.
广告开始和关闭事件可以使用unityAdsDidStart
和 unityAdsDidFinish
回调来处理. 如果您想要在观看完成后奖励 (reward) 玩家, 您应该在 unityAdsDidFinish
回调里检查 UnityAdsFinishState
, 在这里您可以检查玩家是看完了视频还是选择了跳过.