xiongzhu 10 месяцев назад
Родитель
Сommit
37c17b978a
1 измененных файлов с 8 добавлено и 3 удалено
  1. 8 3
      app/src/main/java/com/example/modifier/repo/SpoofedInfoRepo.kt

+ 8 - 3
app/src/main/java/com/example/modifier/repo/SpoofedInfoRepo.kt

@@ -19,7 +19,6 @@ import com.example.modifier.constants.SIMView
 import com.example.modifier.extension.kill
 import com.example.modifier.model.SpoofedSimInfo
 import com.example.modifier.utils.ApduChannel
-import com.example.modifier.utils.ROOT_ACCESS
 import com.example.modifier.utils.SimEncoder
 import com.example.modifier.utils.genICCID
 import com.example.modifier.utils.genIMEI
@@ -38,7 +37,6 @@ import kotlinx.coroutines.launch
 import kotlinx.serialization.encodeToString
 import kotlinx.serialization.json.Json
 import org.apache.commons.io.FileUtils
-import org.json.JSONObject
 import java.io.File
 
 val Context.simInfoDataStore by preferencesDataStore(name = "${BuildConfig.APPLICATION_ID}.simInfo")
@@ -252,8 +250,15 @@ class SpoofedInfoRepo private constructor(private val context: Context) {
                 apduChannel1.writeMSISDN_USIM(spoofedSimInfo.number)
                 apduChannel.close()
 
-                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && !ROOT_ACCESS) {
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
                     telephonyManager.rebootModem()
+                } else {
+                    val mClass = Class.forName("android.telephony.TelephonyManager")
+                    val rebootRadio = mClass.getDeclaredMethod("rebootRadio")
+                    rebootRadio.isAccessible = true
+                    rebootRadio.invoke(telephonyManager)
+                    Log.i(TAG, "rebootRadio: success")
+                    delay(5000)
                 }
 
                 val subscriptionManager =