eygraber
09/22/2024, 9:52 PMBen Trengrove [G]
09/22/2024, 10:04 PMeygraber
09/22/2024, 10:06 PMBen Trengrove [G]
09/22/2024, 10:12 PMeygraber
09/22/2024, 10:13 PMBen Trengrove [G]
09/22/2024, 10:14 PMeygraber
09/22/2024, 10:57 PMBen Trengrove [G]
09/23/2024, 12:19 AMkrzysztof
09/23/2024, 11:39 AMkrzysztof
09/23/2024, 11:40 AMeygraber
09/23/2024, 12:08 PMkrzysztof
09/23/2024, 12:13 PMeygraber
09/23/2024, 12:27 PMkrzysztof
09/23/2024, 12:28 PMeygraber
09/23/2024, 12:31 PMkrzysztof
09/23/2024, 12:38 PMeygraber
09/23/2024, 2:50 PMkrzysztof
09/23/2024, 3:01 PMvar loading by remember { mutableStateOf(false) }
val scope = rememberCoroutineScope()
fun onClick() {
scope.launch {
loading = true
val result = requestPermissions()
if(result.granted) {
navigateToHome()
} else {
navigateToPermissionRationale()
}
loading = false
}
}
Column() {
Screen(onClick = onClick)
}
eygraber
09/23/2024, 3:57 PMval scope = rememberCoroutineScope()
var loading by remember { mutableStateOf(false) }
val permissionState = rememberPermissionState(...) { isGranted ->
scope.launch {
if(isGranted) {
navigateToHome()
} else {
navigateToPermissionRationale()
}
}
loading = false
}
Column {
Screen(
onClick = {
loading = true
permissionState.launchPermissionRequest()
}
)
}
krzysztof
09/23/2024, 4:26 PMeygraber
09/23/2024, 4:42 PMkrzysztof
09/23/2024, 4:52 PMBen Trengrove [G]
09/24/2024, 1:09 AMIan Lake
09/25/2024, 5:26 PMkrzysztof
09/25/2024, 7:32 PMIan Lake
09/25/2024, 7:36 PMkrzysztof
09/25/2024, 7:47 PMvar visible by remember { mutableStateOf(true) }
if (visible) {
val permission = rememberPermissionState(
android.Manifest.permission.CAMERA
) { granted ->
println(granted)
}
Button(onClick = {
permission.launchPermissionRequest()
visible = false
}) {
Text("Request permission")
}
}
Ian Lake
09/25/2024, 7:49 PMkrzysztof
09/25/2024, 7:52 PMrememberUpdatedState
in rememberLauncherForActivityResult
krzysztof
09/25/2024, 7:55 PMColton Idle
09/27/2024, 5:22 AMIan Lake
09/27/2024, 5:27 AMeygraber
09/27/2024, 11:39 AMcompose-permissionx
but at the end of the day the user will have to trade off between optimizing for permanent denials or cancellations.eygraber
10/22/2024, 9:20 PM