Unity项目之AndroidStudio打jar包
16lz
2021-01-25
前言
在Eclipse中我们都知道可以选中java代码然后到处为jar包,但是现在普遍都是android studio开发,所以我们需要掌握下as的打jar包流程。
使用unity做游戏,避免不了需要和android和ios交互,有些android的sdk在接入时,我们每次打包都需要导出as中,然后修改java代码,但是如果直接把工具代码导出jar包,那么就非常方便了,接下来是详细教程。
步骤
- 1.先把unity的项目到处gradle工程,然后用as打开。这里untiy我是用的2018.4.0版本,但是这个对于unity版本没有限制。
- 2.使用as打开后如图所示
- 3.在项目中新建一个module,(步骤:File->New->New Module->Android Library)
- 4.定义好library的工程名和包名
- 5.新建完成后如图所示
- 6.在library的src/main/java下写需要打包的工具类,因为打包实际打的就是这个library中的脚本,不是主工程的脚本。
比如Unity导出的工程,library工程中的脚本可能会依赖unity-classes.jar等文件,理论上module和主工程可以相互依赖,但是unity主工程可以引入module工程,但是module无法引用主工程,这时可以把这个jar包从主工程拷贝到library中一份,然后在library的build.gradle中的dependencies中添加一句引用
//implementation改为api,代表开放引用,因为主工程和library工程中各有一个jar文件api files('libs/unity-classes.jar')
- 7.打开library中的build.gradle文件,在最后添加脚本。
mysdk.jar 就是到处的jar包名称,可以自行修改。
task makeJar(type: Copy) {//删除老包 delete 'build/libs/mysdk.jar' //设置拷贝的源文件,记得去找下路径,版本不同路径可能不同 from('build/intermediates/packaged-classes/release/') //jar包的打包路径 into('build/libs/') //include和exclude参数可以设置过滤文件 include('classes.jar') //给jar重命名 rename('classes.jar', 'mysdk.jar')}makeJar.dependsOn(build)
- 8.最后一步是打包了,打开Terminal命令窗口,在as的下边
输入命令:gradlew makeJar
理论上,这是可以一步打出jar的,最后弹出Build Success语句
但是也会根据你的sdk或者代码的问题报不同的错,在你的Terminal中会有相应的提示,你需要根据提示进行修改
比如我就有提示说要我在android{}中添加语句块
lintOptions { abortOnError false }
总之到这一步出的错误都是你自己的工程的问题了。比如包的依赖问题,jar包的依赖问题等,你只要检查下你的脚本没有错误,然后根据Terminal中的提示进行修改个别地方,应该就没有问题了。
- 9.打jar包成功后,可以在library的build/libs目录下找到你的jar,然后你就可以把这个jar包复制到任何需要使用的地方。
最后,祝你成功。
更多相关文章
- 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
- AttributeSet自定义控件方法
- kotlin Anko的实际用法
- 史上最详细创建 Android(安卓)AIDL 远程服务的步骤
- Android截图代码实现
- Android菜单设计(2) : options menu使用注意事项
- Android(安卓)For JNI(六)——交叉编译,NDK概述以及文件结构,编写
- 移动终端高级开发工程师
- Android(安卓)---- WebView与JavaScript交互调用(1)