SigBypass Dropdown
This commit is contained in:
parent
4b7d644c43
commit
bfd4fb12d0
|
|
@ -161,6 +161,15 @@ private fun ConfiguringFab(onClick: () -> Unit) {
|
|||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun sigBypassLvStr(level: Int) = when (level) {
|
||||
0 -> stringResource(R.string.patch_sigbypasslv_0)
|
||||
1 -> stringResource(R.string.patch_sigbypasslv_1)
|
||||
2 -> stringResource(R.string.patch_sigbypasslv_2)
|
||||
else -> throw IllegalArgumentException("Invalid sigBypassLv: $level")
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
private fun PatchOptionsBody(
|
||||
modifier: Modifier,
|
||||
|
|
@ -174,7 +183,7 @@ private fun PatchOptionsBody(
|
|||
var v1 by rememberSaveable { mutableStateOf(false) }
|
||||
var v2 by rememberSaveable { mutableStateOf(true) }
|
||||
var v3 by rememberSaveable { mutableStateOf(true) }
|
||||
val sigBypassLevel by rememberSaveable { mutableStateOf(2) }
|
||||
var sigBypassLevel by rememberSaveable { mutableStateOf(2) }
|
||||
var overrideVersionCode by rememberSaveable { mutableStateOf(false) }
|
||||
val embeddedModules = navController.currentBackStackEntry!!
|
||||
.savedStateHandle.getLiveData<SnapshotStateList<AppInfo>>("selected", SnapshotStateList())
|
||||
|
|
@ -246,11 +255,27 @@ private fun PatchOptionsBody(
|
|||
onClick = { v3 = !v3 },
|
||||
title = stringResource(R.string.patch_v3)
|
||||
)
|
||||
SettingsItem(
|
||||
onClick = { /*TODO*/ },
|
||||
title = stringResource(R.string.patch_sigbypasslv),
|
||||
desc = stringResource(R.string.patch_sigbypasslv_desc)
|
||||
)
|
||||
Box {
|
||||
var expanded by remember { mutableStateOf(false) }
|
||||
SettingsItem(
|
||||
onClick = { expanded = true },
|
||||
title = stringResource(R.string.patch_sigbypasslv),
|
||||
desc = sigBypassLvStr(sigBypassLevel)
|
||||
)
|
||||
DropdownMenu(expanded = expanded, onDismissRequest = { expanded = false }) {
|
||||
repeat(3) {
|
||||
DropdownMenuItem(
|
||||
text = {
|
||||
Row(verticalAlignment = Alignment.CenterVertically) {
|
||||
RadioButton(selected = sigBypassLevel == it, onClick = { sigBypassLevel = it })
|
||||
Text(sigBypassLvStr(it))
|
||||
}
|
||||
},
|
||||
onClick = { sigBypassLevel = it }
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
SettingsCheckBox(
|
||||
checked = overrideVersionCode,
|
||||
onClick = { overrideVersionCode = !overrideVersionCode },
|
||||
|
|
|
|||
|
|
@ -23,7 +23,9 @@
|
|||
<string name="patch_v2">V2 signature</string>
|
||||
<string name="patch_v3">V3 signature</string>
|
||||
<string name="patch_sigbypasslv">Signature bypass level</string>
|
||||
<string name="patch_sigbypasslv_desc">lv0: off\nlv1: bypass pm\nlv2: bypass openat (libc)</string>
|
||||
<string name="patch_sigbypasslv_0">lv0: Off</string>
|
||||
<string name="patch_sigbypasslv_1">lv1: Bypass PM</string>
|
||||
<string name="patch_sigbypasslv_2">lv2: Bypass PM + openat (libc)</string>
|
||||
<string name="patch_override_version_code">Override version code</string>
|
||||
<string name="patch_override_version_code_desc">Override the patched app\'s version code to 1\nThis allows downgrade installation</string>
|
||||
<string name="patch_start">Start Patch</string>
|
||||
|
|
|
|||
Loading…
Reference in New Issue