mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-06 02:35:40 +08:00
chore: migrate build script from groovy to kts
- using SweetDependency, SweetProperty - using new maven publish function - update gradle and dependencies
This commit is contained in:
@@ -1,125 +0,0 @@
|
||||
plugins {
|
||||
id 'com.android.library'
|
||||
id 'org.jetbrains.kotlin.android'
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
}
|
||||
|
||||
android {
|
||||
namespace 'com.highcapable.yukihookapi'
|
||||
compileSdk rootProject.ext.android.compileSdk
|
||||
|
||||
defaultConfig {
|
||||
minSdk rootProject.ext.android.minSdk
|
||||
targetSdk rootProject.ext.android.targetSdk
|
||||
|
||||
buildConfigField('String', 'API_VERSION_NAME', "\"${rootProject.ext.maven.repository.apiVersion.name}\"")
|
||||
buildConfigField('int', 'API_VERSION_CODE', "${rootProject.ext.maven.repository.apiVersion.code}")
|
||||
|
||||
consumerProguardFiles 'consumer-rules.pro'
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
}
|
||||
kotlinOptions {
|
||||
jvmTarget = '11'
|
||||
freeCompilerArgs = [
|
||||
'-opt-in=com.highcapable.yukihookapi.annotation.YukiPrivateApi',
|
||||
'-opt-in=com.highcapable.yukihookapi.annotation.YukiGenerateApi',
|
||||
'-Xno-param-assertions',
|
||||
'-Xno-call-assertions',
|
||||
'-Xno-receiver-assertions'
|
||||
]
|
||||
}
|
||||
lintOptions {
|
||||
checkReleaseBuilds false
|
||||
}
|
||||
publishing {
|
||||
singleVariant('release') {
|
||||
withSourcesJar()
|
||||
withJavadocJar()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
kotlin {
|
||||
sourceSets {
|
||||
all {
|
||||
languageSettings {
|
||||
optIn('com.highcapable.yukihookapi.annotation.YukiPrivateApi')
|
||||
optIn('com.highcapable.yukihookapi.annotation.YukiGenerateApi')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// Used 82 API Version
|
||||
compileOnly 'de.robv.android.xposed:api:82'
|
||||
compileOnly project(':yukihookapi-stub')
|
||||
implementation 'androidx.core:core-ktx:1.10.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.6.1'
|
||||
implementation 'androidx.preference:preference-ktx:1.2.0'
|
||||
}
|
||||
|
||||
tasks.register('androidSourcesJar', Jar) {
|
||||
archiveClassifier.set('sources')
|
||||
from android.sourceSets.main.java.srcDirs
|
||||
}
|
||||
|
||||
group = rootProject.ext.maven.repository.groupId
|
||||
version = rootProject.ext.maven.repository.apiVersion.name
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
release(MavenPublication) {
|
||||
artifactId = 'api'
|
||||
artifact "$buildDir/outputs/aar/${project.name}-release.aar"
|
||||
artifact androidSourcesJar
|
||||
pom {
|
||||
name = rootProject.ext.maven.repository.name
|
||||
description = rootProject.ext.maven.repository.description
|
||||
url = rootProject.ext.maven.repository.website
|
||||
licenses {
|
||||
license {
|
||||
name = rootProject.ext.maven.repository.licence.name
|
||||
url = rootProject.ext.maven.repository.licence.url
|
||||
}
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = rootProject.ext.maven.developer.id
|
||||
name = rootProject.ext.maven.developer.user
|
||||
email = rootProject.ext.maven.developer.email
|
||||
}
|
||||
}
|
||||
scm {
|
||||
connection = rootProject.ext.maven.configurations.githubConnection
|
||||
developerConnection = rootProject.ext.maven.configurations.githubDeveloperConnection
|
||||
url = rootProject.ext.maven.configurations.githubUrl
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
maven {
|
||||
name = rootProject.ext.maven.configurations.ossName
|
||||
url = rootProject.ext.maven.configurations.ossUrl
|
||||
credentials {
|
||||
def configs = getMavenCredentials(projectDir)
|
||||
username = configs.username
|
||||
password = configs.password
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
signing { sign publishing.publications }
|
Reference in New Issue
Block a user