mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-29 15:25:28 +03:00
b91ce939a2
We've done no signing of any Skyline APKs to date which causes issues regarding authenticity of any APKs as they could be entirely unofficial builds which have not been vetted by the team. Additionally, the different keys remove the ability to reinstall a different build successively as Android checks for matching signatures before installing an APK.
127 lines
3.3 KiB
Groovy
127 lines
3.3 KiB
Groovy
plugins {
|
|
id 'com.android.application'
|
|
id 'kotlin-android'
|
|
id 'kotlin-kapt'
|
|
id 'dagger.hilt.android.plugin'
|
|
}
|
|
|
|
android {
|
|
namespace 'emu.skyline'
|
|
|
|
compileSdkVersion 31
|
|
buildToolsVersion '33.0.0-rc4'
|
|
defaultConfig {
|
|
applicationId "skyline.emu"
|
|
|
|
minSdkVersion 29
|
|
targetSdkVersion 31
|
|
|
|
versionCode 3
|
|
versionName "0.0.3"
|
|
|
|
ndk {
|
|
abiFilters "arm64-v8a"
|
|
}
|
|
}
|
|
|
|
/* JVM Bytecode Options */
|
|
def javaVersion = JavaVersion.VERSION_1_8
|
|
compileOptions {
|
|
sourceCompatibility = javaVersion
|
|
targetCompatibility = javaVersion
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = javaVersion.toString()
|
|
}
|
|
|
|
signingConfigs {
|
|
ci {
|
|
storeFile file("${System.getProperty("user.home")}/keystore.jks")
|
|
storePassword System.getenv("SIGNING_STORE_PASSWORD")
|
|
keyAlias System.getenv("SIGNING_KEY_ALIAS")
|
|
keyPassword System.getenv("SIGNING_KEY_PASSWORD")
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
debuggable true
|
|
externalNativeBuild {
|
|
cmake {
|
|
arguments "-DCMAKE_BUILD_TYPE=RELEASE"
|
|
}
|
|
}
|
|
minifyEnabled true
|
|
shrinkResources true
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
signingConfig = System.getenv("CI") ? signingConfigs.ci : signingConfigs.debug
|
|
}
|
|
|
|
debug {
|
|
debuggable true
|
|
minifyEnabled false
|
|
shrinkResources false
|
|
signingConfig = System.getenv("CI") ? signingConfigs.ci : signingConfigs.debug
|
|
}
|
|
}
|
|
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
|
|
/* Linting */
|
|
lint {
|
|
disable 'IconLocation'
|
|
}
|
|
|
|
/* NDK and CMake */
|
|
ndkVersion '25.0.8221429'
|
|
externalNativeBuild {
|
|
cmake {
|
|
version '3.18.1+'
|
|
path "CMakeLists.txt"
|
|
}
|
|
}
|
|
|
|
/* Android Assets */
|
|
androidResources {
|
|
ignoreAssetsPattern '*.md'
|
|
}
|
|
|
|
/* Vulkan Validation Layers */
|
|
sourceSets {
|
|
debug {
|
|
jniLibs {
|
|
srcDir "libraries/vklayers"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
/* Google */
|
|
implementation "androidx.core:core-ktx:1.7.0"
|
|
implementation 'androidx.appcompat:appcompat:1.4.1'
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
|
|
implementation 'androidx.preference:preference-ktx:1.2.0'
|
|
implementation 'com.google.android.material:material:1.5.0'
|
|
implementation 'androidx.documentfile:documentfile:1.0.1'
|
|
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
|
|
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
|
|
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
|
|
implementation 'androidx.fragment:fragment-ktx:1.4.1'
|
|
implementation "com.google.dagger:hilt-android:$hilt_version"
|
|
kapt "com.google.dagger:hilt-android-compiler:$hilt_version"
|
|
implementation 'com.google.android.flexbox:flexbox:3.0.0'
|
|
|
|
/* JetBrains */
|
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
|
|
|
/* Other Java */
|
|
implementation 'info.debatty:java-string-similarity:2.0.0'
|
|
}
|
|
|
|
kapt {
|
|
correctErrorTypes true
|
|
}
|