Unity项目之AndroidStudio打jar包

前言

在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打开后如图所示Unity项目之AndroidStudio打jar包_第1张图片
  • 3.在项目中新建一个module,(步骤:File->New->New Module->Android Library)
  • Unity项目之AndroidStudio打jar包_第2张图片
  • 4.定义好library的工程名和包名
  • Unity项目之AndroidStudio打jar包_第3张图片
  • 5.新建完成后如图所示

Unity项目之AndroidStudio打jar包_第4张图片

  • 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
    Unity项目之AndroidStudio打jar包_第5张图片
    理论上,这是可以一步打出jar的,最后弹出Build Success语句
    Unity项目之AndroidStudio打jar包_第6张图片
    但是也会根据你的sdk或者代码的问题报不同的错,在你的Terminal中会有相应的提示,你需要根据提示进行修改
    比如我就有提示说要我在android{}中添加语句块
lintOptions {
        abortOnError false
    }

总之到这一步出的错误都是你自己的工程的问题了。比如包的依赖问题,jar包的依赖问题等,你只要检查下你的脚本没有错误,然后根据Terminal中的提示进行修改个别地方,应该就没有问题了。

  • 9.打jar包成功后,可以在library的build/libs目录下找到你的jar,然后你就可以把这个jar包复制到任何需要使用的地方。
    Unity项目之AndroidStudio打jar包_第7张图片
    最后,祝你成功。

你可能感兴趣的:(Unity)