mirror of
https://github.com/Aviortheking/Neo-Store.git
synced 2025-04-23 19:32:16 +00:00
Improve: Dont Check Root Permission Recursively
This commit is contained in:
parent
df8dc09897
commit
06f6d2b56c
@ -3,7 +3,6 @@ package com.looker.droidify.installer
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import com.looker.droidify.content.Cache
|
import com.looker.droidify.content.Cache
|
||||||
import com.looker.droidify.utility.Utils.rootInstallerEnabled
|
|
||||||
import com.looker.droidify.utility.extension.android.Android
|
import com.looker.droidify.utility.extension.android.Android
|
||||||
import com.topjohnwu.superuser.Shell
|
import com.topjohnwu.superuser.Shell
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
@ -23,36 +22,32 @@ class RootInstaller(context: Context) : BaseInstaller(context) {
|
|||||||
override suspend fun uninstall(packageName: String) = mRootUninstaller(packageName)
|
override suspend fun uninstall(packageName: String) = mRootUninstaller(packageName)
|
||||||
|
|
||||||
private suspend fun mRootInstaller(cacheFile: File) {
|
private suspend fun mRootInstaller(cacheFile: File) {
|
||||||
if (rootInstallerEnabled) {
|
val installCommand =
|
||||||
val installCommand =
|
String.format(
|
||||||
String.format(
|
ROOT_INSTALL_PACKAGE,
|
||||||
ROOT_INSTALL_PACKAGE,
|
cacheFile.absolutePath,
|
||||||
cacheFile.absolutePath,
|
getCurrentUserState,
|
||||||
getCurrentUserState,
|
cacheFile.length()
|
||||||
cacheFile.length()
|
)
|
||||||
)
|
val deleteCommand =
|
||||||
val deleteCommand =
|
String.format(
|
||||||
String.format(
|
DELETE_PACKAGE,
|
||||||
DELETE_PACKAGE,
|
getUtilBoxPath,
|
||||||
getUtilBoxPath,
|
cacheFile.absolutePath.quote
|
||||||
cacheFile.absolutePath.quote
|
)
|
||||||
)
|
withContext(Dispatchers.IO) {
|
||||||
withContext(Dispatchers.IO) {
|
launch {
|
||||||
launch {
|
Shell.su(installCommand).submit {
|
||||||
Shell.su(installCommand).submit {
|
if (it.isSuccess) Shell.su(deleteCommand).submit()
|
||||||
if (it.isSuccess) Shell.su(deleteCommand).submit()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private suspend fun mRootUninstaller(packageName: String) {
|
private suspend fun mRootUninstaller(packageName: String) {
|
||||||
if (rootInstallerEnabled) {
|
val uninstallCommand =
|
||||||
val uninstallCommand =
|
String.format(ROOT_UNINSTALL_PACKAGE, getCurrentUserState, packageName)
|
||||||
String.format(ROOT_UNINSTALL_PACKAGE, getCurrentUserState, packageName)
|
withContext(Dispatchers.IO) { launch { Shell.su(uninstallCommand).submit() } }
|
||||||
withContext(Dispatchers.IO) { launch { Shell.su(uninstallCommand).submit() } }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private val getCurrentUserState: String =
|
private val getCurrentUserState: String =
|
||||||
|
Loading…
x
Reference in New Issue
Block a user