AndroidStudio工程鏈接github:https://github.com/574096324/Unity-gradle-jar
一:Unity導(dǎo)出Gradle項(xiàng)目,用AS打包apk
Unity 5.x 開始支持使用 aar 文件
Unity 5.4 開始支持導(dǎo)出 Gradle 工程
本文用的工具版本:Unity5.6.4,Android Studio3.0,gradle 4.1
1.在Unity中buildseeting選擇gradle,導(dǎo)出項(xiàng)目
image.png
2.用AndroidStudio打開
image.png
3.點(diǎn)取消,選擇下載好的gradle,我的是4.1-all,下載地址http://services.gradle.org/distributions/
(如果確定會要翻墻才能下載)
image.png
4.修改你所有的build.gradle為你AS的版本,我的就應(yīng)該改為3.0.0
image.png
5.修改java代碼,修改XML(如果有多個(gè)moudle注意SDK的版本一致,否則Merge會出錯(cuò))
然后Shift+F10就可以直接運(yùn)行到手機(jī)上了,在菜單欄Tools>BuildApk可打出apk
二:打Jar包方式(引入多個(gè)SDK,通過Module來實(shí)現(xiàn))
1.在AndroidStuido新建一個(gè)Project,隨意命名,然后新建個(gè)Module如圖
image.png
選擇AndroidLibrary,這個(gè)的PackgeName就是你的app的類似com.xx.xx,要和Unity的一致
2.之后所有的操作都在這個(gè)Module文件下進(jìn)行,修改build.grale,刪掉appid,寫好依賴(也可手動添加),加上導(dǎo)出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,關(guān)于Unity的Classes.jar可以參考我的另一片文章:
http://www.reibang.com/p/1627eb8e83f7項(xiàng)目目錄結(jié)構(gòu)可參考截圖,還有些靜態(tài)的.so庫
image.png
4.修改java代碼,如果報(bào)錯(cuò)一般就是依賴關(guān)系丟失,檢查下libs下的文件是不是加入了依賴,或者File>ProjectStructure...快捷鍵Ctrl+Shift+Alt+S
image.png
5.在Unity項(xiàng)目中文件放置如圖
image.png
6.然后用Unity的BuildApk打包即可
AndroidStudio工程鏈接github:https://github.com/574096324/Unity-gradle-jar