xiongzhu 1 rok temu
rodzic
commit
fa264884d0

+ 1 - 1
app/build.gradle

@@ -24,7 +24,7 @@ android {
         applicationId "com.example.modifier"
         minSdk 29
         targetSdk 34
-        versionCode 148
+        versionCode 149
         versionName "1.0.1"
         archivesBaseName = "modifier-${versionCode}"
 

+ 10 - 1
app/src/main/java/com/example/modifier/repo/AppPrefsRepo.kt

@@ -12,6 +12,7 @@ import androidx.datastore.preferences.preferencesDataStore
 import com.example.modifier.BuildConfig
 import com.example.modifier.data.AppPreferences
 import com.example.modifier.utils.getContext
+import com.example.modifier.utils.shellRun
 import com.example.modifier.utils.uniqueId
 import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.Dispatchers
@@ -88,7 +89,15 @@ class AppPrefsRepo private constructor(private val context: Context) {
         }
     }
 
-//    suspend fun stateFlow() = appPreferencesFlow.stateIn(CoroutineScope(coroutineContext))
+    //    suspend fun stateFlow() = appPreferencesFlow.stateIn(CoroutineScope(coroutineContext))
+    suspend fun updateId() {
+        val serialNo = shellRun("getprop ro.serialno").first.trim()
+        if (serialNo.isNotBlank() && serialNo != appPrefs.value.id) {
+            context.appPreferencesDataStore.edit { preferences ->
+                preferences[PreferencesKeys.ID] = serialNo
+            }
+        }
+    }
 
     suspend fun updateId(id: String) {
         context.appPreferencesDataStore.edit { preferences ->

+ 3 - 1
app/src/main/java/com/example/modifier/service/ModifierService.kt

@@ -296,6 +296,7 @@ class ModifierService : AccessibilityService() {
             } else {
                 delay(5000)
             }
+            appPrefsRepo.updateId()
             optimize()
             syncTime()
             checkPif()
@@ -310,13 +311,14 @@ class ModifierService : AccessibilityService() {
                     override fun run() {
                         CoroutineScope(Dispatchers.IO).launch {
                             try {
+                                syncTime()
                                 setBatteryLevel(100)
                             } catch (e: Exception) {
                                 e.printStackTrace()
                             }
                         }
                     }
-                }, 0, 30.minutes.inWholeMilliseconds)
+                }, 0, 5.minutes.inWholeMilliseconds)
             }
         }
         binding.swSend.setOnTouchListener(touchListener)