mirror of
https://github.com/ImranR98/Obtainium.git
synced 2025-07-17 15:16:43 +02:00
Fix all
This commit is contained in:
@ -109,6 +109,7 @@ dependencies {
|
|||||||
implementation "dev.rikka.tools.refine:runtime:$hidden_api_version"
|
implementation "dev.rikka.tools.refine:runtime:$hidden_api_version"
|
||||||
implementation "dev.rikka.hidden:compat:$hidden_api_version"
|
implementation "dev.rikka.hidden:compat:$hidden_api_version"
|
||||||
compileOnly "dev.rikka.hidden:stub:$hidden_api_version"
|
compileOnly "dev.rikka.hidden:stub:$hidden_api_version"
|
||||||
|
implementation "org.lsposed.hiddenapibypass:hiddenapibypass:4.3"
|
||||||
|
|
||||||
implementation "com.github.topjohnwu.libsu:core:5.2.2"
|
implementation "com.github.topjohnwu.libsu:core:5.2.2"
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,7 @@ import io.flutter.plugin.common.MethodChannel
|
|||||||
import io.flutter.plugin.common.MethodChannel.Result
|
import io.flutter.plugin.common.MethodChannel.Result
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
import java.util.concurrent.CountDownLatch
|
import java.util.concurrent.CountDownLatch
|
||||||
|
import org.lsposed.hiddenapibypass.HiddenApiBypass
|
||||||
import rikka.shizuku.Shizuku
|
import rikka.shizuku.Shizuku
|
||||||
import rikka.shizuku.Shizuku.OnRequestPermissionResultListener
|
import rikka.shizuku.Shizuku.OnRequestPermissionResultListener
|
||||||
import rikka.shizuku.ShizukuBinderWrapper
|
import rikka.shizuku.ShizukuBinderWrapper
|
||||||
@ -76,7 +77,8 @@ class MainActivity: FlutterActivity() {
|
|||||||
val params =
|
val params =
|
||||||
PackageInstaller.SessionParams(PackageInstaller.SessionParams.MODE_FULL_INSTALL)
|
PackageInstaller.SessionParams(PackageInstaller.SessionParams.MODE_FULL_INSTALL)
|
||||||
var installFlags: Int = PackageInstallerUtils.getInstallFlags(params)
|
var installFlags: Int = PackageInstallerUtils.getInstallFlags(params)
|
||||||
installFlags = installFlags or 0x00000004 // PackageManager.INSTALL_ALLOW_TEST
|
installFlags = installFlags or (0x00000002/*PackageManager.INSTALL_REPLACE_EXISTING*/ or
|
||||||
|
0x00000004 /*PackageManager.INSTALL_ALLOW_TEST*/)
|
||||||
PackageInstallerUtils.setInstallFlags(params, installFlags)
|
PackageInstallerUtils.setInstallFlags(params, installFlags)
|
||||||
val sessionId = packageInstaller.createSession(params)
|
val sessionId = packageInstaller.createSession(params)
|
||||||
val iSession = IPackageInstallerSession.Stub.asInterface(
|
val iSession = IPackageInstallerSession.Stub.asInterface(
|
||||||
@ -136,7 +138,7 @@ class MainActivity: FlutterActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun rootInstallApk(apkFilePath: String, result: Result) {
|
private fun rootInstallApk(apkFilePath: String, result: Result) {
|
||||||
Shell.sh("pm install -R -t " + apkFilePath).submit { out ->
|
Shell.sh("pm install -r -t " + apkFilePath).submit { out ->
|
||||||
val builder = StringBuilder()
|
val builder = StringBuilder()
|
||||||
for (data in out.getOut()) { builder.append(data) }
|
for (data in out.getOut()) { builder.append(data) }
|
||||||
result.success(builder.toString().endsWith("Success"))
|
result.success(builder.toString().endsWith("Success"))
|
||||||
@ -145,6 +147,9 @@ class MainActivity: FlutterActivity() {
|
|||||||
|
|
||||||
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
|
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
|
||||||
super.configureFlutterEngine(flutterEngine)
|
super.configureFlutterEngine(flutterEngine)
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
||||||
|
HiddenApiBypass.addHiddenApiExemptions("")
|
||||||
|
}
|
||||||
Shizuku.addRequestPermissionResultListener(shizukuRequestPermissionResultListener)
|
Shizuku.addRequestPermissionResultListener(shizukuRequestPermissionResultListener)
|
||||||
installersChannel = MethodChannel(
|
installersChannel = MethodChannel(
|
||||||
flutterEngine.dartExecutor.binaryMessenger, "installers")
|
flutterEngine.dartExecutor.binaryMessenger, "installers")
|
||||||
|
Reference in New Issue
Block a user