~/talk

Streamlining Permission Request in Jetpack Compose

Talkat droidcon London 2024 · 2024-10-31..11-01· [android, developer-experience]
links:none on file
slides:none on file

Builds a reusable Compose flow that removes boilerplate by centralising permission logic: a permission state manager plus a permission UI wrapper coordinate intents, rationale screens and ActivityResultLaunchers. Requested permissions are cached in SharedPreferences, read‑media handles API34 limited vs all access, and screens eagerly resolve status onStart so returning from Settings restores pending actions. Demo app with camera + media import works end‑to‑end and shows rationales, settings redirection and successful callbacks.

AI-written summary · about

  1. 0:00Permission streamlining in Compose
  2. 2:12Demo app setup
  3. 3:47Live permission flows demo
  4. 7:22Challenges with Google's flow
  5. 11:55Simplifying permission principles
  6. 14:01Permission system components
  7. 17:49Consistent rationale screens
  8. 20:20State manager and UI wrapper
  9. 27:01Screen-level permission declarations
  10. 32:57Permissions in actual screens
  11. 34:22Key takeaways
  12. 35:46Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.