Skip to main content

常见问题

升级到Xcode15后加载unityAds时崩溃#

崩溃堆栈如下:

解决方案

  1. 使用unityAds v4.9.2及以上版本(unityAds在v4.9.2版本中修复了此问题) 2.使用Xcode15的话需要把App对最低版本修改为12.0或以上版本 3.使用Xcode14进行编译打包

升级到Xcode14后加载穿山甲广告崩溃#

已知如果使用的 穿山甲SDK 4.7.1.0及以下版本 在Xcode14上编译后,在iOS16系统下加载穿山甲广告时会有崩溃情况发生。

原因是穿山甲SDK 4.7.1.0及以下版本 未对Xcode14进行适配。 需要升级SDK来解决此问题。

腾讯 或 穿山甲的原生视频广告展示时中断了其他App的音乐播放。#

v8.9.0版本开始,可以在加载广告前通过本地参数接口来配置

[TradPlus sharedInstance].settingDataParam = @{
@"CSJ_AllowModifyAudioSessionSetting":@(YES),//穿山甲
@"GDT_EnableDefaultAudioSessionSetting":@(YES)//腾讯
};

v8.9.0之前版本,可以在展示广告前调用三方API进行设置

//穿山甲
#import <BUAdSDK/BUAdSDK.h>
[BUAdSDKConfiguration configuration].allowModifyAudioSessionSetting = YES;
//腾讯
#import "GDTSDKConfig.h"
[GDTSDKConfig enableDefaultAudioSessionSetting:YES];

exception "NSInvalidArgumentException', reason: "-[TradPlus sdk0pen:]: unrecognized selector#

如果遇到上面的崩溃日志时,您需要确认 Xcode项目配置 “TARGETS” > “Build Setting” > “Linking” > “Other Linker Flags”中,是否已经添加了 -ObjC

加载错误 600009 "waterfall bean is null"#

  • 检查 TradPlus后台 广告位的中介组中是否已配置了广告源

  • 如果 TradPlus后台 广告位的中介组中只配置了海外bidding的广告源时,请检查手机ip是否在海外。手机处于国内IP时是无法获取到海外bidding配置的。

  • 测试广告时,建议在 TradPlusSDK open初始化完成后再进行广告加载操作。

  • 如果您的广告加载是紧接着open初始化调用的情况下(未等待open初始化完成), v7.1.0+版本可以通过API忽略SDK隐私设置强制获取IDFA。从而方便的中介组分组及测试模式的idfa设备匹配。

// 通过设置此接口可以强制获取IDFA(v7.1.0+新增)
// 注:测试完成后一定要移除或关闭,开启时会忽略所有隐私规则获取IDFA
[TradPlus forceGetIDFA:YES];

腾讯广告播放后导致游戏或应用背景音乐消失#

  • 首次开发者反馈出现在腾讯广告SDK v4.13.51 版本中。

  • 由于腾讯广告SDK默认使用其内部的AVAudioSession,可能和您游戏或应用的音频设置产生冲突。

  • 可按照腾讯官方API说明进行设置

来源:https://developers.adnet.qq.com/doc/ios/guide

在播放音频时是否使用SDK内部对AVAudioSession设置的category及options,默认使用,若不使用,SDK内部不做任何处理,由调用方在播放视频时自行设置;

SDK设置的category为AVAudioSessionCategoryAmbient,options为AVAudioSessionCategoryOptionDuckOthers

#import "GDTSDKConfig.h"
+ (void)enableDefaultAudioSessionSetting:(BOOL)enabled;

IronSource加载错误#

IronSource SDK不支持多个appID进行重复初始化,只有首次初始化的appID才是有效的。

  • 当您使用 appID_A 进行IronSource 初始化后。
  • 然后使用 appID_B 初始化并广告加载时,IronSource会出现加载失败情况。
  • errCode: 527, errMsg: The requested instance does not exist

快手相关设置#

  • 快手的SDK 不支持 bitcode 需要关闭 bitcode

  • 快手自渲染原生广告没有无法点击。 需要实现r- (UIViewController *)viewControllerForPresentingModalView回调并返回非空UIViewControlle


Liftoff激励视频没有奖励回调#

如果使用官方提供的激励视频测试广告位,已知是不会有奖励回调的 "appid":"5e02cb6f3434b7001824b8f9" "placementid":"REWARD12-2837487"

您可以使用Liftoff后台创建的正式广告位进行测试验证


inmobi SDK正常返回展示 三方统计没有展示记录#

由于inmobi平台的展示统计链接一般都是http的,需要检测app是否看开启了运营使用http请求。

开启http请求需要在 Info.plist 中添加设置

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

framework 签名设置#

  • 手动接入时,部分SDK需要设置为 需要在General项下拉找到对应的库,设置 Embed&Sign
平台framework
快手KSAdSDK.framework
SuperAwesomeAlamofire.framework
Moya.framework
SuperAwesome.framework
SwiftyXMLParser.framework
MoPubMoPubSDK.framework
OMSDK_Mopub.framework
SmaatoOMSDK_Smaato.framework
OguryOMSDK_Ogury.framework
MetaFBAudienceNetwork.framework(v6.10.0开始)
VerveOMSDK_Pubnativenet.framework
HyBid.framework

常见的项目编译报错#

  • 解决方法:工程项目中新建一个swift文件,这样xcode会自动生成swift相关配置了。

注:Unity2019+项目,向UnityFramework添加一个空的swift文件就可以解决此报错。添加后 xcode就会自动生成swift相关配置,然后就可以删除此文件了,否则在项目发布时会导致Swift系统库签名错误。

  • 解决方法:添加 libc++abi.tbd

  • 解决方法:添加 libbz2.tbd

  • 解决方法:添加 EventKit.framework 和 EventKitUI.framework

  • 解决方法:添加 libresolv.9.tbd