Summary
In this chapter, we explored what runtime permissions are and why we should declare and request permissions in our apps. Step by step, we learned how to request runtime permissions in our app and how to show permission rationale dialogs, explaining to users why we need access to runtime permissions in cases where they have denied apps access to permissions.
In the next chapter, we will learn debugging tips and tricks, how to detect leaks using LeakCanary, how to inspect HTTPS requests/responses fired by our app using Chucker, and how to inspect the Room database.