OPPO(畅思安卓)广告sdk接入unity工程遇到的一些错误和解决方案

本文详细介绍了在Unity工程中接入OPPO广告SDK时可能遇到的问题,包括lib.so文件放置、C#调用Java方法的注意事项、错误码1022的解决、AndroidJavaRunnable异常及UI线程错误。通过这些解决方案,开发者可以更好地处理Unity与Android原生SDK的交互问题。
摘要由CSDN通过智能技术生成

在广告sdk接入过程中,如果碰到的第三方广告sdk是个 unitypackage,那么导入一下就基本万事大吉。但是往往第三方广告商的sdk都是针对安卓(java)层面或者iOS(Objective-C)层面的库,这个时候就需要写几个中间层来从unity工程里去调用那些非C#的语言支持的库。这个过程也往往意味着会有很多比较偏底层的调试工作要进行。


要验证广告sdk是否接入成功,看到广告可以正常播放并且接下来也不会发生什么奇怪的事就可以了。但是接入失败的时候,就有可能有各种各样的地方出了问题。


1.

本文中提到的OPPO广告sdk版本号为ChanceAdSDK_5.3.5和ChanceAdSDK_5.3.6. (注意是畅思的安卓sdk,关于畅思的iOS的sdk以后会讲,基本上是另外一个次元的事了,因为都是和Objective-C跟C打交道)。


2.

lib.so文件一定不要忘记放进Unity工程的Plugins/Android/目录下,一定不要忘,不然几乎游戏一开始就会闪退(或者发生其他你不希望发生的奇怪的事),因为找不到lib.so。


3. 

C#调用Java代码时,注意用 Call 去调用Java层面的普通方法,用 CallStatic 去调用Java层面的静态方法。至于一个方法是否静态,可以看文档或者问相关SDK的技术人员。


4.

错误码1022

com.chance.ads.internal.av: [loadad]  : [[response]]:{"result":false,"err":1022,"ver":1}

运行时去加载广告没有反应,于是去查log,好在发现了错误码,去畅思安卓的官方文档里查到错误码1022的意思是:

“SDK请求的OS广告类型与平台配置不匹配”

去畅思官网上检查了下配置,发现placementID没有配置,于是配置了一下。

然而。。。

加载广告时依然没有反应,这次连错误码都没有了。


5.

AndroidJavaRunnable抛NullReferenceException

具体报错信息如下(马赛克掉了不能外传的信息):

NullReferenceException: Object reference not set to an instance of an object
                           

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值