在Unity游戏加入广告大体有如下几种方式:html
其中以第一种最多见,我用的也是这一种。android
第一种方式的整个流程大体是这样:post
这个过程能够参考这两篇文章:unity3d插入android有米广告和Unity 3D 关于给APK包加广告的流程。
若是你按照步骤成功加入了广告,能够跳过下面的部分。我在这个过程当中遇到了几个问题。ui
第一个是 CommandInvokationFailure: Failed to re-package resources。
出现这个问题的缘由是Android的资源没有整合好。首先检查下文件层次结构:.net
Assetes/
--------Plugins/
----------------Android/
------------------------AndroidManifest.xml
------------------------SDK文件
------------------------导出的Jar包插件
若是仍然有问题,看看是否是我遇到的 AppCompat 相关的问题。我对Android了解的很少,解决的方法也不见得高明:3d
好了,问题解决了。code
在Java项目里面,根据SDK文档,通常都是写好了一些方法,可让你方便地建立广告条、插屏广告之类的。
在Unity中选择一个GameObject,使用下面代码获得Java类的对象:xml
jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
而后用 AndroidJavaObject 的 Call 方法便可,如:htm
jo.Call("showSpot");
最后是关于游戏的图标和名字。
如此加入广告代码以后,Unity项目的图标会被Android项目中的覆盖。因此,最方便的是在建立Android项目时就肯定Icon。
而游戏的名字仍是Unity项目中的。
以上都是我在尝试向Unity中加入广告时,参考他人博客和本身摸索得出的,若有错误请指出。请以广告SDK文档为准。