Slide 1

Slide 1 text

Nav Singh @navczydev What’s new in Android

Slide 2

Slide 2 text

Agenda

Slide 3

Slide 3 text

It’s time to update… targetSdk 33 compileSdk 33

Slide 4

Slide 4 text

Almost there...

Slide 5

Slide 5 text

● Runtime Notification permission ● Exact alarm permission ● Granular media permissions ● Runtime permission for nearby wifi devices ● Foreground Services task manager ● Intent filters ● Clipboard sensitive data protection Android 13 Behavioral changes

Slide 6

Slide 6 text

Android 13 New features ● Per app language preferences ● Photo picker ● Predictive back gesture ● Clipboard preview ● Tile API ● Themed Icons ● Bluetooth LE Audio ● Support for MIDI 2.0 standard ● Faster hyphenation

Slide 7

Slide 7 text

Permissions ● POST_NOTIFICATIONS ● READ_MEDIA_IMAGE ● READ_MEDIA_AUDIO ● READ_MEDIA_VIDEO ● USE_EXACT_ALARM

Slide 8

Slide 8 text

Developer downgradable permissions ● Remove unused permissions revokeSelfPermissionOnKill() revokeSelfPermisisonsOnKill() ● To revoke all permissions from the system, all processes associated with the app must be killed.

Slide 9

Slide 9 text

Safer exporting of context-registered receivers ● We can set the broadcast receiver to be exported or not ● RECEIVER_EXPORTED ● RECEIVER_NOT_EXPORTED

Slide 10

Slide 10 text

Photo picker tool ● Intent action: MediaStore.ACTION_PICK_IMAGES ● Type: image or video ● Default limit: 1 ● Extra: MediaStore.EXTRA_PICK_IMAGES_MAX

Slide 11

Slide 11 text

Photo picker tool

Slide 12

Slide 12 text

Clipboard enhancements ● Non-sensitive content ● Sensitive content

Slide 13

Slide 13 text

Clipboard enhancements

Slide 14

Slide 14 text

Quick settings placement API

Slide 15

Slide 15 text

Intent filters ● The intent will only be delivered if it matches the intent filters defined by the exported component. ● If receiving app upgrades to >=13, all intents from external apps are delivered to an exported component only if it matches its declared elements, regardless of the sending app's target SDK version.

Slide 16

Slide 16 text

Intent filters

Slide 17

Slide 17 text

Intent filters

Slide 18

Slide 18 text

Per App language - System settings ● Specify the supported languages in a resource file

Slide 19

Slide 19 text

Per App language - System settings ● In the manifest application tag, add the property android:localeConfig

Slide 20

Slide 20 text

Per App language - System settings

Slide 21

Slide 21 text

Per App language - In-app language picker ● Specify the supported languages in a resource file

Slide 22

Slide 22 text

Predictive back gesture ● It is possible to preview a back gesture's destination or result before completing it.

Slide 23

Slide 23 text

Foreground service task manager

Slide 24

Slide 24 text

Media controls - UX

Slide 25

Slide 25 text

Themed app icons

Slide 26

Slide 26 text

Themed app icons

Slide 27

Slide 27 text

● Accessibility scanner ● ADB over Wifi ● Animation preview ● Device manager/picker ● Google play sdk index ● App quality insights Tools & IDE improvements ● Revamped Logcat ● Live Edit ● Multi Preview annotations ● Recomposition count ● Device mirroring ● Visual linting ● Resizeable Emulator ● Emulated Bluetooth

Slide 28

Slide 28 text

● https://proandroiddev.com/notification-runtime-permission-android13-19 0c796254d5 ● https://proandroiddev.com/photopicker-compose-android-13-5fd834927 0e0 ● https://developer.android.com/about/versions/13/ ● https://www.youtube.com/watch?v=3TLxH_G-PcM ● https://www.youtube.com/watch?v=vXqwRhjd7b4&t=466s&ab_channel=A ndroidDevelopers References

Slide 29

Slide 29 text

Thank You!