Unity 接入安卓Sdk 菜鸟教程
最近零零散散接入和几家sdk,有些没有unity的包,只能很痛苦的去接安卓,网上的各家帖子很多都互相复制粘贴而且还有很多是用的eclipse那个反人类的IDE。。。总结个菜鸟经验留着备份
下面上图文教程。。。
![](https://img.haomeiwen.com/i15081429/e0398ebff81faa84.png)
这里我们因为只是为了到处aar包来供unity使用,其实可以直接选择add no activity。但实际上 选择任何activity都没有什么关系,因为我们及时创建了也不会 用到对应的activity 我们需要的只是这个工程而已 这里我们先选empty activity
![](https://img.haomeiwen.com/i15081429/5419e30306cfc179.png)
完成之后会弹出如下界面 笔者这里用的是最新版的as,界面和老版的稍有不同。老版的有一点需要注意的是,根据你填写的信息所生成的packgeName默认是全部小写的,需要点击右侧的 edit 按钮来修改。
而我们这里这些出了工程路径之外其他不管是package Name还是 minimum 安卓版本 都不必在意,原因和上面相同,我们比不会 用到它,只是需要在上面去创建一个android library来导出aar供我们使用。
然后就是我们的工程了。
![](https://img.haomeiwen.com/i15081429/0874e69fa572f8f1.png)
![](https://img.haomeiwen.com/i15081429/9b78ac647bf31c9f.png)
![](https://img.haomeiwen.com/i15081429/8693ddea0241d07b.png)
首先是我们工程显示的视图,我们常用的有两种模式,一种是project 一种是android 简单的说,配偶揭穿他视图模式下就是将文件夹的路径显示出来,二android试图下显示的是你的工程,有一些无关的信息会隐藏掉 或者一些路径会简化。
然后我们先创建一个android library
![](https://img.haomeiwen.com/i15081429/7ff9c638ac82db95.png)
![](https://img.haomeiwen.com/i15081429/76d9c2f59a47a76c.png)
这里我们要注意,minimum安卓版本和包名要去按照需求设置了。包名必须和unity中的bundleID相同,否则在导出到unity打包时会出现 AndroidManifest无法合并的错误。
这里如果自动生成的包名不正确的haul可以点击右边的edit手动进行修改。
![](https://img.haomeiwen.com/i15081429/d4b4564009056194.png)
完成后我们删除之前的activity 如下图
![](https://img.haomeiwen.com/i15081429/9cbaf2c7313f69bd.png)
打开后按照步骤点击如玉所示
![](https://img.haomeiwen.com/i15081429/b6783478ea276628.png)
稍等as编译完成项目后回到peoject视图,将app文件夹删除
![](https://img.haomeiwen.com/i15081429/fad3fa862335a043.png)
完成后打开我们的weChatPay文件夹(这里用微信支付sdk举例)
![](https://img.haomeiwen.com/i15081429/a3e77dcd143e431c.png)
这里我们发现报错了,实际上是缺少了一些类库没有引用进去,这种时候我们可以百度所缺少的类库对应的名称,然后通过后面的方法将他添加进去。这里报错的是一些安卓自己生成用于单元测试的代码以及res下面的Android自带的资源及配置,我们直接删除就好。
![](https://img.haomeiwen.com/i15081429/1157704ef9c0490b.png)
然后我们把拿到的微信支付的jar包导入其中,
首先将jar包要放在libs文件夹下,此文件夹用来存放各种引用的类库
![](https://img.haomeiwen.com/i15081429/ae982eb6b05117ad.png)
然后我们点击
![](https://img.haomeiwen.com/i15081429/691a4e3e5a10cdaa.png)
按照图中步骤,我们打开这个module的依赖,先把这些暂时没有用到的去掉,之后有需要我们可以再添加。然后我们添加对微信支付jar包的依赖
![](https://img.haomeiwen.com/i15081429/84f21159f862df4c.png)
选择jar dependency
![](https://img.haomeiwen.com/i15081429/2fd2caaad7f3eba8.png)
找到我们的类库,点击ok
![](https://img.haomeiwen.com/i15081429/a5f4d9eefe459a17.png)
稍等片刻后发现编译完成,我们打开build gradle发现
![](https://img.haomeiwen.com/i15081429/eb9497c9c0750199.png)
引用信息已经添加到了其中。 除了上面的方法我们也可以通过这种直接修改gradle 的方法来添加引用。
然后我们找到unity提供的classes.jar包。
首先我们找到unity安装路径下的 Editor\Data\PlaybackEngines\AndroidPlayer\Variations路径
![](https://img.haomeiwen.com/i15081429/03adb34c9f562e45.png)
这里是根据的playersetting的buildsetting中的设置来选择,默认为mono 然后选择对应文件夹下的\Release\Classes 将其中的jar包按照上述过程添加到工程中
完成后发现在gradle中
![](https://img.haomeiwen.com/i15081429/1dbd38c5a779713c.png)
添加成功
接下来我们打开微信支付官方提供的demo
先大概看一下官方的文档已经官方的案例,找出来我们需要用到脚本接口之类的。这里先不细说我们先来打包aar
![](https://img.haomeiwen.com/i15081429/d14e9478ccd032b5.png)
完成后在eventLog中看到输出的信息
![](https://img.haomeiwen.com/i15081429/34070a9c536909a7.png)
我们将工程在peoject视图下找到
![](https://img.haomeiwen.com/i15081429/afbd80b827309fed.png)
这就是我们需要提供给unity的arr包
今天先写到这里早上起来再更