diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index e9969a1..7b46144 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -14,7 +14,6 @@
-
diff --git a/app/src/main/java/com/fankes/tsbattery/application/TSApplication.kt b/app/src/main/java/com/fankes/tsbattery/application/TSApplication.kt
index 8093834..c55b230 100644
--- a/app/src/main/java/com/fankes/tsbattery/application/TSApplication.kt
+++ b/app/src/main/java/com/fankes/tsbattery/application/TSApplication.kt
@@ -38,15 +38,10 @@ class TSApplication : Application() {
* @return [TSApplication]
*/
val appContext get() = context ?: error("App is death")
-
- /** 自身 APP 是否已启动 */
- var isMineStarted = false
}
override fun onCreate() {
super.onCreate()
- /** 设置状态 */
- isMineStarted = true
/** 设置静态实例 */
context = this
/** 跟随系统夜间模式 */
diff --git a/app/src/main/java/com/fankes/tsbattery/hook/HookEntry.kt b/app/src/main/java/com/fankes/tsbattery/hook/HookEntry.kt
index b290269..1821de5 100644
--- a/app/src/main/java/com/fankes/tsbattery/hook/HookEntry.kt
+++ b/app/src/main/java/com/fankes/tsbattery/hook/HookEntry.kt
@@ -36,12 +36,12 @@ import com.fankes.tsbattery.hook.HookConst.ENABLE_RUN_INFO
import com.fankes.tsbattery.hook.HookConst.QQ_PACKAGE_NAME
import com.fankes.tsbattery.hook.HookConst.TIM_PACKAGE_NAME
import com.fankes.tsbattery.hook.HookConst.WECHAT_PACKAGE_NAME
-import com.fankes.tsbattery.utils.showDialog
-import com.fankes.tsbattery.utils.versionCode
-import com.fankes.tsbattery.utils.versionName
-import com.highcapable.yukihookapi.YukiHookAPI.configs
+import com.fankes.tsbattery.utils.factory.showDialog
+import com.fankes.tsbattery.utils.factory.versionCode
+import com.fankes.tsbattery.utils.factory.versionName
import com.highcapable.yukihookapi.annotation.xposed.InjectYukiHookWithXposed
import com.highcapable.yukihookapi.hook.bean.VariousClass
+import com.highcapable.yukihookapi.hook.factory.configs
import com.highcapable.yukihookapi.hook.factory.encase
import com.highcapable.yukihookapi.hook.factory.field
import com.highcapable.yukihookapi.hook.log.loggerD
@@ -292,11 +292,19 @@ class HookEntry : YukiHookXposedInitProxy {
}
}
- override fun onHook() = encase {
- configs {
- debugTag = "TSBattery"
- isDebug = false
- }
+ override fun onHook() {
+ runConfig()
+ runHook()
+ }
+
+ /** 配置 Hook */
+ private fun runConfig() = configs {
+ debugTag = "TSBattery"
+ isDebug = false
+ }
+
+ /** 开始 Hook */
+ private fun runHook() = encase {
loadApp(QQ_PACKAGE_NAME) {
hookSystemWakeLock()
hookNotification()
diff --git a/app/src/main/java/com/fankes/tsbattery/ui/MainActivity.kt b/app/src/main/java/com/fankes/tsbattery/ui/MainActivity.kt
index 377196e..b44610d 100644
--- a/app/src/main/java/com/fankes/tsbattery/ui/MainActivity.kt
+++ b/app/src/main/java/com/fankes/tsbattery/ui/MainActivity.kt
@@ -48,10 +48,10 @@ import com.fankes.tsbattery.hook.HookConst.ENABLE_RUN_INFO
import com.fankes.tsbattery.hook.HookConst.QQ_PACKAGE_NAME
import com.fankes.tsbattery.hook.HookConst.TIM_PACKAGE_NAME
import com.fankes.tsbattery.hook.HookConst.WECHAT_PACKAGE_NAME
-import com.fankes.tsbattery.utils.isInstall
-import com.fankes.tsbattery.utils.isNotSystemInDarkMode
-import com.fankes.tsbattery.utils.openSelfSetting
-import com.fankes.tsbattery.utils.showDialog
+import com.fankes.tsbattery.utils.factory.isInstall
+import com.fankes.tsbattery.utils.factory.isNotSystemInDarkMode
+import com.fankes.tsbattery.utils.factory.openSelfSetting
+import com.fankes.tsbattery.utils.factory.showDialog
import com.gyf.immersionbar.ktx.immersionBar
import com.highcapable.yukihookapi.hook.factory.isTaiChiModuleActive
import com.highcapable.yukihookapi.hook.factory.modulePrefs
diff --git a/app/src/main/java/com/fankes/tsbattery/utils/DialogBuilder.kt b/app/src/main/java/com/fankes/tsbattery/utils/factory/DialogBuilderFactory.kt
similarity index 98%
rename from app/src/main/java/com/fankes/tsbattery/utils/DialogBuilder.kt
rename to app/src/main/java/com/fankes/tsbattery/utils/factory/DialogBuilderFactory.kt
index 1eaba66..5e9dfa6 100644
--- a/app/src/main/java/com/fankes/tsbattery/utils/DialogBuilder.kt
+++ b/app/src/main/java/com/fankes/tsbattery/utils/factory/DialogBuilderFactory.kt
@@ -21,7 +21,7 @@
*/
@file:Suppress("unused")
-package com.fankes.tsbattery.utils
+package com.fankes.tsbattery.utils.factory
import android.app.AlertDialog
import android.content.Context
diff --git a/app/src/main/java/com/fankes/tsbattery/utils/Utils.kt b/app/src/main/java/com/fankes/tsbattery/utils/factory/FunctionFactory.kt
similarity index 81%
rename from app/src/main/java/com/fankes/tsbattery/utils/Utils.kt
rename to app/src/main/java/com/fankes/tsbattery/utils/factory/FunctionFactory.kt
index 8d819a3..226426f 100644
--- a/app/src/main/java/com/fankes/tsbattery/utils/Utils.kt
+++ b/app/src/main/java/com/fankes/tsbattery/utils/factory/FunctionFactory.kt
@@ -21,7 +21,7 @@
*/
@file:Suppress("DEPRECATION")
-package com.fankes.tsbattery.utils
+package com.fankes.tsbattery.utils.factory
import android.content.Context
import android.content.Intent
@@ -96,17 +96,15 @@ fun Number.dp(context: Context) = toFloat() * context.resources.displayMetrics.d
* 跳转 APP 自身设置界面
* @param packageName 包名
*/
-fun Context.openSelfSetting(packageName: String) {
- try {
- if (packageName.isInstall)
- startActivity(Intent().apply {
- flags = Intent.FLAG_ACTIVITY_NEW_TASK
- action = Settings.ACTION_APPLICATION_DETAILS_SETTINGS
- data = Uri.fromParts("package", packageName, null)
- })
- else Toast.makeText(this, "你没有安装此应用", Toast.LENGTH_SHORT).show()
- } catch (_: Exception) {
- Toast.makeText(this, "启动 $packageName 应用信息失败", Toast.LENGTH_SHORT).show()
- }
+fun Context.openSelfSetting(packageName: String) = runCatching {
+ if (packageName.isInstall)
+ startActivity(Intent().apply {
+ flags = Intent.FLAG_ACTIVITY_NEW_TASK
+ action = Settings.ACTION_APPLICATION_DETAILS_SETTINGS
+ data = Uri.fromParts("package", packageName, null)
+ })
+ else Toast.makeText(this, "你没有安装此应用", Toast.LENGTH_SHORT).show()
+}.onFailure {
+ Toast.makeText(this, "启动 $packageName 应用信息失败", Toast.LENGTH_SHORT).show()
}
diff --git a/app/src/main/java/com/fankes/tsbattery/view/MaterialSwitch.kt b/app/src/main/java/com/fankes/tsbattery/view/MaterialSwitch.kt
index 3402879..44b8897 100644
--- a/app/src/main/java/com/fankes/tsbattery/view/MaterialSwitch.kt
+++ b/app/src/main/java/com/fankes/tsbattery/view/MaterialSwitch.kt
@@ -28,7 +28,7 @@ import android.content.res.ColorStateList
import android.graphics.Color
import android.util.AttributeSet
import androidx.appcompat.widget.SwitchCompat
-import com.fankes.tsbattery.utils.dp
+import com.fankes.tsbattery.utils.factory.dp
import com.fankes.tsbattery.utils.drawable.drawabletoolbox.DrawableBuilder
class MaterialSwitch(context: Context, attrs: AttributeSet?) : SwitchCompat(context, attrs) {