From 9fffc44be16420f43f4003d537d7703e0c934519 Mon Sep 17 00:00:00 2001 From: X1nto Date: Mon, 22 Jun 2020 21:28:45 +0400 Subject: [PATCH] doing some bullshit because fuck android --- .../core/installer/AppUninstallerService.kt | 26 +++++++++++-------- .../com/vanced/manager/ui/MainActivity.kt | 24 ++++++++--------- 2 files changed, 26 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/vanced/manager/core/installer/AppUninstallerService.kt b/app/src/main/java/com/vanced/manager/core/installer/AppUninstallerService.kt index f1bdfb10..bd1e037d 100644 --- a/app/src/main/java/com/vanced/manager/core/installer/AppUninstallerService.kt +++ b/app/src/main/java/com/vanced/manager/core/installer/AppUninstallerService.kt @@ -3,9 +3,9 @@ package com.vanced.manager.core.installer import android.app.Service import android.content.Intent import android.content.pm.PackageInstaller +import android.os.Handler import android.os.IBinder import android.util.Log -import android.widget.Toast import androidx.localbroadcastmanager.content.LocalBroadcastManager import com.vanced.manager.ui.MainActivity @@ -15,7 +15,7 @@ class AppUninstallerService: Service() { val pkgName = intent?.getStringExtra("pkg") when (intent?.getIntExtra(PackageInstaller.EXTRA_STATUS, -999)) { PackageInstaller.STATUS_PENDING_USER_ACTION -> { - Log.d(AppInstallerService.TAG, "Requesting user confirmation for installation") + Log.d(AppInstallerService.TAG, "Requesting user confirmation for uninstallation") val confirmationIntent = intent.getParcelableExtra(Intent.EXTRA_INTENT) confirmationIntent?.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) try { @@ -24,17 +24,21 @@ class AppUninstallerService: Service() { } } PackageInstaller.STATUS_SUCCESS -> { - val mIntent = Intent(MainActivity.APP_UNINSTALLED) - mIntent.action = MainActivity.APP_UNINSTALLED - LocalBroadcastManager.getInstance(this).sendBroadcast(mIntent) - Log.d("VMpm", "Successfully uninstalled $pkgName") + Handler().postDelayed({ + val mIntent = Intent() + mIntent.action = MainActivity.APP_UNINSTALLED + LocalBroadcastManager.getInstance(this).sendBroadcast(mIntent) + Log.d("VMpm", "Successfully uninstalled $pkgName") + }, 1500) } PackageInstaller.STATUS_FAILURE -> { - val mIntent = Intent(MainActivity.APP_NOT_UNINSTALLED) - mIntent.action = MainActivity.APP_NOT_UNINSTALLED - mIntent.putExtra("pkgName", pkgName) - LocalBroadcastManager.getInstance(this).sendBroadcast(mIntent) - Log.d("VMpm", "Failed to uninstall $pkgName") + Handler().postDelayed({ + val mIntent = Intent() + mIntent.action = MainActivity.APP_NOT_UNINSTALLED + mIntent.putExtra("pkgName", pkgName) + LocalBroadcastManager.getInstance(this).sendBroadcast(mIntent) + Log.d("VMpm", "Failed to uninstall $pkgName") + }, 1500) } } stopSelf() diff --git a/app/src/main/java/com/vanced/manager/ui/MainActivity.kt b/app/src/main/java/com/vanced/manager/ui/MainActivity.kt index e6bf664a..c0b5c08c 100644 --- a/app/src/main/java/com/vanced/manager/ui/MainActivity.kt +++ b/app/src/main/java/com/vanced/manager/ui/MainActivity.kt @@ -2,6 +2,7 @@ package com.vanced.manager.ui import android.content.* import android.os.Bundle +import android.util.Log import android.view.MenuItem import androidx.appcompat.widget.Toolbar import androidx.databinding.DataBindingUtil @@ -62,7 +63,10 @@ class MainActivity : Main() { regularPackageInstalled(getString(R.string.microg_installed), this@MainActivity) } INSTALL_FAILED -> installAlertBuilder(intent.getStringExtra("errorMsg") as String, this@MainActivity) - APP_UNINSTALLED -> restartActivity() + APP_UNINSTALLED -> { + restartActivity() + Log.d("VMpm", "test") + } APP_NOT_UNINSTALLED -> installAlertBuilder(getString(R.string.failed_uninstall) + intent.getStringExtra("pkgName"), this@MainActivity) } } @@ -122,18 +126,12 @@ class MainActivity : Main() { } private fun registerReceivers() { - LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, IntentFilter( - INSTALL_COMPLETED - )) - LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, IntentFilter( - INSTALL_FAILED - )) - LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, IntentFilter( - APP_UNINSTALLED - )) - LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, IntentFilter( - APP_NOT_UNINSTALLED - )) + val intentFilter = IntentFilter() + intentFilter.addAction(INSTALL_COMPLETED) + intentFilter.addAction(INSTALL_FAILED) + intentFilter.addAction(APP_UNINSTALLED) + intentFilter.addAction(APP_NOT_UNINSTALLED) + LocalBroadcastManager.getInstance(this).registerReceiver(broadcastReceiver, intentFilter) }