Android 11 and
the Future
Aung Kyaw Paing
Mobile Development Team Lead
nexlabs
Slide 2
Slide 2 text
1. Android 11
2. Android Studio
3. Modern Android Development
Slide 3
Slide 3 text
Android 11
Slide 4
Slide 4 text
1. Built-in screen recording
2. New Media Control
3. Smart Reply
4. Conversations
User-sided features
Slide 5
Slide 5 text
Developer
sided Features
Slide 6
Slide 6 text
Bubbles
- Started from Notification panel
- OS-level support
Slide 7
Slide 7 text
Slide 8
Slide 8 text
Slide 9
Slide 9 text
Slide 10
Slide 10 text
Slide 11
Slide 11 text
Conversations
- Show at the top under seperate section
- Can promote to bubble
- Conversation-specific actions
- Mark as priority
- Promote to bubble
- Silence notification
- Custom sounds/vibrations
Slide 12
Slide 12 text
Slide 13
Slide 13 text
WindowInsets
- Can listen to WindowInsets animations
- Can show keyboard easily
- Will be added to appcompat later
Slide 14
Slide 14 text
doOnLayout {
Slide 15
Slide 15 text
val animationCallback = object : WindowInsetsAnimation.Callback(DISPATCH_MODE_STOP) {
override fun onPrepare(animation: WindowInsetsAnimation) {
): WindowInsets {
Wireless
debugging
Easily set up Wifi ADB through QR code or
pairing code
Slide 18
Slide 18 text
Privacy
Updates
Slide 19
Slide 19 text
Scoped Storage
- requestLegacyExternalStorage is ignored
on Android 11
- Access to all files in shared storage
requires read/write file permission
Slide 20
Slide 20 text
One-Time
Permission
Slide 21
Slide 21 text
Permission
Auto-reset
- Auto reset to decline permission after a
few months
Slide 22
Slide 22 text
Don’t ask again
- If user taps “Decline” more than once, it’s
considered as “Don’t ask again”
Slide 23
Slide 23 text
Background
Location
Permission
- Need to be requested separately
- Have to request for Foreground Location
permission first
<<<- Required only when requesting background location access on
Android 10 (API level 29) and higher. <<>
Slide 24
Slide 24 text
Tools
Slide 25
Slide 25 text
1. Database Inspector
2. Android Emulator Windows
3. Dagger Navigation
4. TFLite
5. Foldables
Android Studio 4.1 STABLE
Slide 26
Slide 26 text
Database Inspector
Slide 27
Slide 27 text
Android Emulator Window
Slide 28
Slide 28 text
Dagger Navigation
Slide 29
Slide 29 text
Dagger Navigation
Slide 30
Slide 30 text
TFLite
Slide 31
Slide 31 text
Foldable
Slide 32
Slide 32 text
1. Layout Inspector Live Update On/Off
2. Jetpack Compose support
3. Safe Args Support
4. Accessibility Scanner
5. Multiple Parallel Instrumentation
Testing
Android Studio 4.2 Preview
1. Single-Activity Architecture
2. ViewModel+LiveData
3. Dagger
4. Constraint Layout/Jetpack Compose
Modern Android Development
Slide 38
Slide 38 text
● No longer recommends multiple
activities
● Prefer to use Fragment and Nav Arch
to structure single-activity
Single Activity Architecture
Slide 39
Slide 39 text
ViewModel+LiveData
● ViewModel is not MVVM
Slide 40
Slide 40 text
“The description of the
class for what it does,
matches View Model. That has
nothing to do with MVVM. We
are not telling you to use
or not to use MVVM”
-Yigit Boyar
(droidcon NYC 2017)
Slide 41
Slide 41 text
ViewModel+LiveData
● ViewModel is not MVVM
● Understand how LiveData works
Slide 42
Slide 42 text
● Data Store (Protobuffer)
● Room
● Scoped Storage
Persistence Storage
Slide 43
Slide 43 text
● Manual Injection for small project
● Dagger for large project
Dependency Injection