You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
2.7 KiB

apply plugin: 'com.android.library'
String SDK_DIR = System.getenv("ANDROID_HOME")
if (SDK_DIR == null) {
Properties props = new Properties()
props.load(new FileInputStream(project.rootProject.file("local.properties")))
SDK_DIR = props.get('sdk.dir')
}
android {
compileSdkVersion 29
defaultConfig {
minSdkVersion 29
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
compileOnly files('libs/framework.jar')
compileOnly files('libs/com.huanglong.android.tvapi.jar')
}
String BIN_PATH = System.getenv("BINARY_PATH")
task copyPrivJars(type:Copy) {
from "${SDK_DIR}/platforms/android-29/framework.jar"
into "libs/"
from "${BIN_PATH}/packages/TvmwLib/classes.jar"
into "libs/"
rename 'classes.jar', 'com.huanglong.android.tvapi.jar'
}
preBuild.dependsOn 'copyPrivJars'
task dexClasses(description: 'Create dex file from classes.jar') {
// Add dependent tasks, e.g dexDebugClasses and dexReleaseClasses later
// Make assemble task depend on this task so that it will be executed during assembling
}
assemble.dependsOn 'dexClasses'
String DEX_DIR = "$buildDir/outputs/dex"
task createDexDir {
doFirst {
mkdir DEX_DIR
}
}
android.libraryVariants.all { variant ->
String BUILD_TOOLS_VERSION = project.android.buildToolsVersion
String DEX = "${SDK_DIR}/build-tools/${BUILD_TOOLS_VERSION}/dx"
String DEX_TOOL = org.gradle.internal.os.OperatingSystem.current().windows ? "${DEX}.bat" : "${DEX}"
String dexVariantName = "dex${variant.buildType.name.capitalize()}Classes"
dexClasses.dependsOn "$dexVariantName"
task (dexVariantName, type: Exec) {
dependsOn 'createDexDir'
dependsOn "assemble${variant.buildType.name.capitalize()}"
String inputFile = "${buildDir}/intermediates/aar_main_jar/${variant.buildType.name}/classes.jar"
String outputFile = "${DEX_DIR}/classes.dex"
commandLine("${DEX_TOOL}", "--dex", "--output=${outputFile}", "${inputFile}")
}
}
task makeJar(type: Jar) {
baseName = "com.dolphin.dtv"
from('build/outputs/dex/classes.dex')
include('classes.dex')
doLast {
delete 'libs/com.huanglong.android.tvapi.jar'
delete 'libs/framework.jar'
}
}
makeJar.dependsOn(build)