참고 자료 : Splash screens https://developer.android.com/about/versions/12/features/splash-screen
Android 12 ~ Notifications
Notification
Android 12에서 모든 템플릿을 새롭게 디자인됨
Color Palette, Theme, Typograph, Corner Round도 대응
기본 템플릿을 사용 중이라면 추가 작업을 하지 않아도 됨
Custom RemoteViews로 수정한 경우에는 Android 12에 맞춰서 많은 수정이 필요함
수정가능한 영역
수정가능한 영역
이미지 출처 및 참고 자료 : Custom notifications https://developer.android.com/about/versions/12/behavior-changes-12#custom-notifications
Trampoline
이전 버전에는 Notification의 선택으로 앱을 실행하는 경우, 알림이 닫히고 몇 초간 아무런 반응이 없는 상황이 발생한다. 그 이유는 Notification에서 직접 앱을 실행하지 않고 Service / Braodcast Receiver를 통해서 앱을 시작했기 때문이다. 이것을 trampoline 라고 한다.
Android 12를 Target API로 하는 앱은 Notification trampoline을 사용하는 Service / Braodcast Receiver를 통해서 Activity를 실행할 수 없음
Notification trampoline 역할을 하는 경우에는 Activity를 시작하려고 하면 시스템이 Activity를 시작되지 않도록 함
참고 자료 : Notification trampoline restrictions https://developer.android.com/about/versions/12/behavior-changes-12#notification-trampolines
Toast
이전 버전에서는 어떤 앱이 Toast를 노출했는지 확인할 수 없었음 -> Toast를 사용하는 앱의 아이콘이 표시하는 것으로 개선
Toast에 노출 가능한 문자 길이를 줄였으며 1~2줄 사용을 권장함
복수개의 Toast를 호출한 경우, Toast 노출시간이 끝나야 다음 Toast를 볼 수 있는 문제를 개선하기 위해서 특성 시간동안 앱에서 쌓이게 할 수 있는 Toast 수를 매우 적게 줄였음
Android 12 ~ Picture in Picture
앱에서 PiP 모드로 전환 예정이라고 안내하는 등의 API가 추가
SeamlessResizeEnabled Flag를 추가하여 PiP 창에서 비디오가 아닌 콘텐츠의 크기를 조정할 때 부드러운 cross-fading 애니메이션을 제공
참고 자료 : Picture in Picture (PiP) improvements https://developer.android.com/about/versions/12/features/pip-improvements