Optimize code

Pop a toast instead of crash when creating user failed
Add popToast function
Update READMEs
This commit is contained in:
BinTianqi
2025-08-21 09:11:36 +08:00
parent b3d746083f
commit c745eb25a9
13 changed files with 97 additions and 81 deletions

View File

@@ -6,7 +6,6 @@ import android.content.ServiceConnection
import android.content.pm.PackageManager
import android.os.Bundle
import android.os.IBinder
import android.widget.Toast
import androidx.annotation.Keep
import rikka.shizuku.Shizuku
import rikka.sui.Sui
@@ -54,12 +53,12 @@ fun useShizuku(context: Context, action: (IBinder?) -> Unit) {
if (Shizuku.checkSelfPermission() == PackageManager.PERMISSION_GRANTED) {
Shizuku.bindUserService(getShizukuArgs(context), connection)
} else if(Shizuku.shouldShowRequestPermissionRationale()) {
Toast.makeText(context, R.string.permission_denied, Toast.LENGTH_SHORT).show()
context.popToast(R.string.permission_denied)
} else {
Sui.init(context.packageName)
fun requestPermissionResultListener(requestCode: Int, grantResult: Int) {
if(grantResult != PackageManager.PERMISSION_GRANTED) {
Toast.makeText(context, R.string.permission_denied, Toast.LENGTH_SHORT).show()
context.popToast(R.string.permission_denied)
}
Shizuku.removeRequestPermissionResultListener(::requestPermissionResultListener)
}