Unity安卓Gradle/jar包(AndroidStuio)
2018-04-11 本文已影响36人
三十五岁是码农
AndroidStudio工程链接github:https://github.com/574096324/Unity-gradle-jar
一:Unity导出Gradle项目,用AS打包apk
Unity 5.x 开始支持使用 aar 文件
Unity 5.4 开始支持导出 Gradle 工程
本文用的工具版本:Unity5.6.4,Android Studio3.0,gradle 4.1
1.在Unity中buildseeting选择gradle,导出项目
![](https://img.haomeiwen.com/i3139616/906a58c164fb917e.png)
2.用AndroidStudio打开
![](https://img.haomeiwen.com/i3139616/247bb45df9de055d.png)
3.点取消,选择下载好的gradle,我的是4.1-all,下载地址http://services.gradle.org/distributions/
(如果确定会要翻墙才能下载)
![](https://img.haomeiwen.com/i3139616/a09bc5426f56312b.png)
4.修改你所有的build.gradle为你AS的版本,我的就应该改为3.0.0
![](https://img.haomeiwen.com/i3139616/8155a9beae942b34.png)
5.修改java代码,修改XML(如果有多个moudle注意SDK的版本一致,否则Merge会出错)
然后Shift+F10就可以直接运行到手机上了,在菜单栏Tools>BuildApk可打出apk
二:打Jar包方式(引入多个SDK,通过Module来实现)
1.在AndroidStuido新建一个Project,随意命名,然后新建个Module如图
![](https://img.haomeiwen.com/i3139616/f83536dbfce49415.png)
选择AndroidLibrary,这个的PackgeName就是你的app的类似com.xx.xx,要和Unity的一致
2.之后所有的操作都在这个Module文件下进行,修改build.grale,删掉appid,写好依赖(也可手动添加),加上导出jar包的task
附上我的build.gradle代码
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
defaultConfig {
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
//testImplementation 'junit:junit:4.12'
//androidTestImplementation 'com.android.support.test:runner:1.0.1'
//androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
//task to delete the old jar
task deleteOldJar(type: Delete) {
delete 'release/AndroidPlugin.jar'
}
//task to export contents as jar
task exportJar(type: Copy) {
from('build/intermediates/bundles/release/')
into('release/')
include('classes.jar')
///Rename the jar
rename('classes.jar', 'AndroidPlugin.jar')
}
exportJar.dependsOn(deleteOldJar, build)
android{
lintOptions{
abortOnError false
}
}
3.添加引用到的库,Unity的classes.jar以及第三方SDK的jar,关于Unity的Classes.jar可以参考我的另一片文章:
https://www.jianshu.com/p/1627eb8e83f7项目目录结构可参考截图,还有些静态的.so库
![](https://img.haomeiwen.com/i3139616/f7e2c795625426d4.png)
4.修改java代码,如果报错一般就是依赖关系丢失,检查下libs下的文件是不是加入了依赖,或者File>ProjectStructure...快捷键Ctrl+Shift+Alt+S
![](https://img.haomeiwen.com/i3139616/63445f74c698e272.png)
5.在Unity项目中文件放置如图
![](https://img.haomeiwen.com/i3139616/443e384e4c3190b4.png)
6.然后用Unity的BuildApk打包即可
AndroidStudio工程链接github:https://github.com/574096324/Unity-gradle-jar