From ed64eb3226c541b78b09a7490689ce7ecfec7a10 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Fri, 30 Jun 2023 17:56:26 +0530 Subject: [PATCH] fixup! fixup! Implement Shizuku installer support Signed-off-by: Aayush Gupta --- .../view/ui/onboarding/InstallerFragment.kt | 14 ++++++++++---- .../ui/preferences/InstallationPreference.kt | 17 ++++++++++++++--- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/com/aurora/store/view/ui/onboarding/InstallerFragment.kt b/app/src/main/java/com/aurora/store/view/ui/onboarding/InstallerFragment.kt index 448de5cde..073aa8083 100644 --- a/app/src/main/java/com/aurora/store/view/ui/onboarding/InstallerFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/onboarding/InstallerFragment.kt @@ -84,9 +84,11 @@ class InstallerFragment : BaseFragment() { savedInstanceState: Bundle? ): View { - Shizuku.addBinderReceivedListenerSticky(shizukuAliveListener) - Shizuku.addBinderDeadListener(shizukuDeadListener) - Shizuku.addRequestPermissionResultListener(shizukuResultListener) + if (isOAndAbove()) { + Shizuku.addBinderReceivedListenerSticky(shizukuAliveListener) + Shizuku.addBinderDeadListener(shizukuDeadListener) + Shizuku.addRequestPermissionResultListener(shizukuResultListener) + } B = FragmentOnboardingInstallerBinding.bind( inflater.inflate( @@ -112,7 +114,11 @@ class InstallerFragment : BaseFragment() { } override fun onDestroy() { - Shizuku.removeRequestPermissionResultListener(shizukuResultListener) + if (isOAndAbove()) { + Shizuku.removeBinderReceivedListener(shizukuAliveListener) + Shizuku.removeBinderDeadListener(shizukuDeadListener) + Shizuku.removeRequestPermissionResultListener(shizukuResultListener) + } super.onDestroy() } diff --git a/app/src/main/java/com/aurora/store/view/ui/preferences/InstallationPreference.kt b/app/src/main/java/com/aurora/store/view/ui/preferences/InstallationPreference.kt index 4f08cb436..ed328d468 100644 --- a/app/src/main/java/com/aurora/store/view/ui/preferences/InstallationPreference.kt +++ b/app/src/main/java/com/aurora/store/view/ui/preferences/InstallationPreference.kt @@ -75,9 +75,11 @@ class InstallationPreference : PreferenceFragmentCompat() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - Shizuku.addBinderReceivedListenerSticky(shizukuAliveListener) - Shizuku.addBinderDeadListener(shizukuDeadListener) - Shizuku.addRequestPermissionResultListener(shizukuResultListener) + if (isOAndAbove()) { + Shizuku.addBinderReceivedListenerSticky(shizukuAliveListener) + Shizuku.addBinderDeadListener(shizukuDeadListener) + Shizuku.addRequestPermissionResultListener(shizukuResultListener) + } val abandonPreference: Preference? = findPreference(Preferences.INSTALLATION_ABANDON_SESSION) @@ -163,6 +165,15 @@ class InstallationPreference : PreferenceFragmentCompat() { } } + override fun onDestroy() { + if (isOAndAbove()) { + Shizuku.removeBinderReceivedListener(shizukuAliveListener) + Shizuku.removeBinderDeadListener(shizukuDeadListener) + Shizuku.removeRequestPermissionResultListener(shizukuResultListener) + } + super.onDestroy() + } + private fun checkRootAvailability(): Boolean { return Shell.getShell().isRoot }