mirror of
				https://github.com/ImranR98/Obtainium.git
				synced 2025-10-29 12:33:28 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			123 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			Groovy
		
	
	
	
	
	
| def localProperties = new Properties()
 | |
| def localPropertiesFile = rootProject.file('local.properties')
 | |
| if (localPropertiesFile.exists()) {
 | |
|     localPropertiesFile.withReader('UTF-8') { reader ->
 | |
|         localProperties.load(reader)
 | |
|     }
 | |
| }
 | |
| 
 | |
| def flutterRoot = localProperties.getProperty('flutter.sdk')
 | |
| if (flutterRoot == null) {
 | |
|     throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
 | |
| }
 | |
| 
 | |
| def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
 | |
| if (flutterVersionCode == null) {
 | |
|     flutterVersionCode = '1'
 | |
| }
 | |
| 
 | |
| def flutterVersionName = localProperties.getProperty('flutter.versionName')
 | |
| if (flutterVersionName == null) {
 | |
|     flutterVersionName = '1.0'
 | |
| }
 | |
| 
 | |
| apply plugin: 'com.android.application'
 | |
| apply plugin: 'kotlin-android'
 | |
| apply plugin: 'dev.rikka.tools.refine'
 | |
| apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
 | |
| 
 | |
| def keystoreProperties = new Properties()
 | |
| def keystorePropertiesFile = rootProject.file('key.properties')
 | |
| if (keystorePropertiesFile.exists()) {
 | |
|     keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
 | |
| }
 | |
| 
 | |
| android {
 | |
|     compileSdkVersion rootProject.ext.compileSdkVersion
 | |
|     ndkVersion flutter.ndkVersion
 | |
| 
 | |
|     compileOptions {
 | |
|         sourceCompatibility JavaVersion.VERSION_1_8
 | |
|         targetCompatibility JavaVersion.VERSION_1_8
 | |
|     }
 | |
| 
 | |
|     kotlinOptions {
 | |
|         jvmTarget = '1.8'
 | |
|     }
 | |
| 
 | |
|     sourceSets {
 | |
|         main.java.srcDirs += 'src/main/kotlin'
 | |
|     }
 | |
| 
 | |
|     defaultConfig {
 | |
|         applicationId "dev.imranr.obtainium"
 | |
|         // You can update the following values to match your application needs.
 | |
|         // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
 | |
|         minSdkVersion 24
 | |
|         targetSdkVersion rootProject.ext.targetSdkVersion
 | |
|         versionCode flutterVersionCode.toInteger()
 | |
|         versionName flutterVersionName
 | |
|     }
 | |
|     
 | |
|     flavorDimensions "flavor"
 | |
| 
 | |
|     productFlavors {
 | |
|         normal {
 | |
|             dimension "flavor"
 | |
|             applicationIdSuffix ""
 | |
|         }
 | |
|         fdroid {
 | |
|             dimension "flavor"
 | |
|             applicationIdSuffix ".fdroid"
 | |
|         }
 | |
|     }
 | |
|     
 | |
|     signingConfigs {
 | |
|         release {
 | |
|             keyAlias keystoreProperties['keyAlias']
 | |
|             keyPassword keystoreProperties['keyPassword']
 | |
|             storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
 | |
|             storePassword keystoreProperties['storePassword']
 | |
|         }
 | |
|     }
 | |
|     buildTypes {
 | |
|         release {
 | |
|             signingConfig signingConfigs.release
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| flutter {
 | |
|     source '../..'
 | |
| }
 | |
| 
 | |
| repositories {
 | |
|     maven { url 'https://jitpack.io' }
 | |
| }
 | |
| 
 | |
| dependencies {
 | |
|     def shizuku_version = '13.1.5'
 | |
|     implementation "dev.rikka.shizuku:api:$shizuku_version"
 | |
|     implementation "dev.rikka.shizuku:provider:$shizuku_version"
 | |
| 
 | |
|     def hidden_api_version = '4.3.1'
 | |
|     implementation "dev.rikka.tools.refine:runtime:$hidden_api_version"
 | |
|     implementation "dev.rikka.hidden:compat:$hidden_api_version"
 | |
|     compileOnly "dev.rikka.hidden:stub:$hidden_api_version"
 | |
|     implementation "org.lsposed.hiddenapibypass:hiddenapibypass:4.3"
 | |
| 
 | |
|     implementation "com.github.topjohnwu.libsu:core:5.2.2"
 | |
| }
 | |
| 
 | |
| ext.abiCodes = ["x86_64": 1, "armeabi-v7a": 2, "arm64-v8a": 3]
 | |
| import com.android.build.OutputFile
 | |
| android.applicationVariants.all { variant ->
 | |
|     variant.outputs.each { output ->
 | |
|         def abiVersionCode = project.ext.abiCodes.get(output.getFilter(OutputFile.ABI))
 | |
|         if (abiVersionCode != null) {
 | |
|             output.versionCodeOverride = variant.versionCode * 10 + abiVersionCode
 | |
|         } else {
 | |
|             output.versionCodeOverride = variant.versionCode * 10
 | |
|         }
 | |
|     }
 | |
| } |