因公司需要项目需要调用Android的一些东西,看了很多大神的经验,试了不知道多少次终于成功在Unity中调用Android里面的方法了;
最后总结下加深记忆方便之后项目需要时使用。(笔记是之前做项目的时写的,前段时间刚好有同事遇到同样的问题就翻出来给她看,哈哈完美解决哦,现在整理发出来,属于小白教程)
我这里记录时用的是Android Studio 3.0.1 将文件打包给Unity 2017.4 使用,使它版本同理也可参考使用。
1.打开AS,新建一个AS项目
这个包名要记录下来
选择适配的API版本
选择 Empty Activity就行
名字随意,这里默认就行,然后 Finish
完成后是这样子的
2.新建一个Module
选择Android Library
这个包名需要记住,后面要用,我这里的包名是:com.example.com.as2unity
完成后是这样的
3.把工程视图切换为 Project
在 as2unity 里找到 libs 目录
把到Unity的安装目录下的classes.jar文件,复制招贴到 libs 里
我的路径是这个 D:\ProgramFiles\unity2017.4\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes
粘贴到 libs 目录下
点 OK
完成后如下
然后选中classes右键Add As Library
默认路径就好
完成后会生成如下几个文件
4.切换回Android视图
新建 Activity
默认名字就行
完成后是这样的
5.删除这个XML文件
点 OK
删除 as2unity 中这行代码
复制 app 中这几行代码
粘贴到 as2unity 中
6.修改 as2unity 的 MainActivity
修改前的代码如下
添加引用
修改
修改完成
7.添加一个简单的方法给unity调用,测试是否能成功调用
8.写好后 Bulid
额,报错了
发现是之前忘记注释这行代码了
注释掉
重新 Bulid 后看到如下提示就是完成了
9.完成后切换到 Project 看下目录结构
找到 debug 文件夹
打开文件夹进行如下操作
找到XML文件复制到上面的debug文件夹中
完成后如下这三个文件就是unity需要导入引用的文件
10.接下来就是unity了,新建一个unity项目
新建一个场景和几个文件夹
把上面AS打包好的三个文件导入unity到Plugins/Android目录下(拖到目录下就行了)
11.在场景中创建一个button和一个text测试之前在AS中写的方法
添加一个脚本 TestAndroidAdd 挂在 MainCamera 或者其他对象上都可以
绑定一下脚本中的对象
12.打包测试,在File菜单里找到 BuildSettings
修改下设置,包名就是开始我说要记住的那个,我的是:com.example.com.as2unity
build and run 后起个名字保存就行啦(事先把手机跟电脑连接好)
apk 在手机运行结果截图
测试调用成功。
注:在 Plugins\Android\src 目录下是一些 java 文件,可以将其引入到 android 工程中对它们进行扩展。
重新生成jar替换掉 unity工程中 Assets\Plugins\Android\bin 目录下的 myclass.jar文件。