core subproject

This commit is contained in:
rhunk 2023-07-27 17:12:33 +02:00
parent 4e8dff949f
commit ec6ba52b58
202 changed files with 103 additions and 46 deletions

View File

@ -6,9 +6,6 @@ plugins {
alias(libs.plugins.kotlinAndroid)
}
val appVersionName = "1.1.0"
val appVersionCode = 7
android {
namespace = "me.rhunk.snapenhance"
compileSdk = 33
@ -22,9 +19,6 @@ android {
minSdk = 28
//noinspection OldTargetApi
targetSdk = 33
versionCode = appVersionCode
versionName = appVersionName
multiDexEnabled = true
}
@ -66,7 +60,7 @@ android {
applicationVariants.all {
outputs.map { it as BaseVariantOutputImpl }.forEach { variant ->
variant.outputFileName = "app-${appVersionName}-${variant.name}.apk"
variant.outputFileName = "app-${rootProject.ext["appVersionName"]}-${variant.name}.apk"
}
}
@ -81,24 +75,8 @@ android {
}
dependencies {
compileOnly(files("libs/LSPosed-api-1.0-SNAPSHOT.jar"))
implementation(libs.coroutines)
implementation(libs.kotlin.reflect)
implementation(libs.recyclerview)
implementation(libs.gson)
implementation(libs.ffmpeg.kit)
implementation(libs.osmdroid.android)
implementation(libs.okhttp)
implementation(libs.androidx.documentfile)
implementation(project(":mapper"))
}
tasks.register("getVersion") {
doLast {
val versionFile = File("app/build/version.txt")
versionFile.writeText(android.defaultConfig.versionName.toString())
}
implementation(project(":core"))
implementation(libs.androidx.activity.ktx)
}
afterEvaluate {

View File

@ -0,0 +1,10 @@
package me.rhunk.snapenhance.manager
import android.os.Bundle
import androidx.activity.ComponentActivity
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
}

View File

@ -5,4 +5,7 @@ plugins {
alias(libs.plugins.kotlinAndroid) apply false
}
rootProject.ext.set("appVersionName", "1.1.0")
rootProject.ext.set("appVersionCode", 7)
true // Needed to make the Suppress annotation work for the plugins block

16
core/.gitignore vendored Normal file
View File

@ -0,0 +1,16 @@
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
/.idea/
.DS_Store
/build
/captures
.externalNativeBuild
.cxx
local.properties

44
core/build.gradle.kts Normal file
View File

@ -0,0 +1,44 @@
@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
plugins {
id("com.android.library")
alias(libs.plugins.kotlinAndroid)
}
android {
namespace = "me.rhunk.snapenhance.core"
compileSdk = 33
buildFeatures {
aidl = true
}
defaultConfig {
minSdk = 28
buildConfigField("String", "VERSION_NAME", "\"${rootProject.ext["appVersionName"]}\"")
buildConfigField("int", "VERSION_CODE", "${rootProject.ext["appVersionCode"]}")
}
kotlinOptions {
jvmTarget = "1.8"
}
}
tasks.register("getVersion") {
doLast {
val versionFile = File("app/build/version.txt")
versionFile.writeText(android.defaultConfig.versionName.toString())
}
}
dependencies {
compileOnly(files("libs/LSPosed-api-1.0-SNAPSHOT.jar"))
implementation(libs.coroutines)
implementation(libs.kotlin.reflect)
implementation(libs.recyclerview)
implementation(libs.gson)
implementation(libs.ffmpeg.kit)
implementation(libs.osmdroid.android)
implementation(libs.okhttp)
implementation(libs.androidx.documentfile)
implementation(project(":mapper"))
}

View File

@ -2,6 +2,7 @@ package me.rhunk.snapenhance
import android.util.Log
import de.robv.android.xposed.XposedBridge
import me.rhunk.snapenhance.core.BuildConfig
object Logger {
private const val TAG = "SnapEnhance"

View File

@ -7,6 +7,7 @@ import android.content.pm.PackageManager
import kotlinx.coroutines.runBlocking
import kotlinx.coroutines.withContext
import me.rhunk.snapenhance.bridge.BridgeClient
import me.rhunk.snapenhance.core.BuildConfig
import me.rhunk.snapenhance.data.SnapClassCache
import me.rhunk.snapenhance.hook.HookStage
import me.rhunk.snapenhance.hook.Hooker
@ -34,7 +35,7 @@ class SnapEnhance {
//for lspatch builds, we need to check if the service is correctly installed
runCatching {
appContext.androidContext.packageManager.getApplicationInfoCompat(BuildConfig.APPLICATION_ID, PackageManager.GET_META_DATA)
appContext.androidContext.packageManager.getApplicationInfoCompat(BuildConfig.LIBRARY_PACKAGE_NAME, PackageManager.GET_META_DATA)
}.onFailure {
appContext.crash("SnapEnhance bridge service is not installed. Please download stable version from https://github.com/rhunk/SnapEnhance/releases")
return@hook

View File

@ -2,16 +2,16 @@ package me.rhunk.snapenhance.action.impl
import android.content.Intent
import android.os.Bundle
import me.rhunk.snapenhance.BuildConfig
import me.rhunk.snapenhance.action.AbstractAction
import me.rhunk.snapenhance.config.ConfigProperty
import me.rhunk.snapenhance.core.BuildConfig
import me.rhunk.snapenhance.ui.map.MapActivity
class OpenMap: AbstractAction("action.open_map", dependsOnProperty = ConfigProperty.LOCATION_SPOOF) {
override fun run() {
context.runOnUiThread {
val mapActivityIntent = Intent()
mapActivityIntent.setClassName(BuildConfig.APPLICATION_ID, MapActivity::class.java.name)
mapActivityIntent.setClassName(BuildConfig.LIBRARY_PACKAGE_NAME, MapActivity::class.java.name)
mapActivityIntent.putExtra("location", Bundle().apply {
putDouble("latitude", context.config.string(ConfigProperty.LATITUDE).toDouble())
putDouble("longitude", context.config.string(ConfigProperty.LONGITUDE).toDouble())

View File

@ -10,7 +10,7 @@ import android.os.Handler
import android.os.HandlerThread
import android.os.IBinder
import de.robv.android.xposed.XposedHelpers
import me.rhunk.snapenhance.BuildConfig
import me.rhunk.snapenhance.core.BuildConfig
import me.rhunk.snapenhance.Logger.xposedLog
import me.rhunk.snapenhance.ModContext
import me.rhunk.snapenhance.bridge.types.BridgeFileType
@ -32,12 +32,12 @@ class BridgeClient(
with(context.androidContext) {
//ensure the remote process is running
startActivity(Intent()
.setClassName(BuildConfig.APPLICATION_ID, ForceStartActivity::class.java.name)
.setClassName(BuildConfig.LIBRARY_PACKAGE_NAME, ForceStartActivity::class.java.name)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_MULTIPLE_TASK)
)
val intent = Intent()
.setClassName(BuildConfig.APPLICATION_ID, BridgeService::class.java.name)
.setClassName(BuildConfig.LIBRARY_PACKAGE_NAME, BridgeService::class.java.name)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
bindService(
intent,

View File

@ -9,7 +9,7 @@ import android.content.Intent
import android.content.IntentFilter
import android.net.Uri
import android.os.Environment
import me.rhunk.snapenhance.BuildConfig
import me.rhunk.snapenhance.core.BuildConfig
import me.rhunk.snapenhance.Logger
import me.rhunk.snapenhance.config.ConfigProperty
import me.rhunk.snapenhance.features.Feature

Some files were not shown because too many files have changed in this diff Show More