if (state == SCREEN_RECORDING_STATE_VISIBLE) { // We're being recorded } else { // We're not being recorded } } override fun onStart() { super.onStart() val initialState = windowManager.addScreenRecordingCallback(mainExecutor, mCallback) mCallback.accept(initialState ) } override fun onStop() { super.onStop() windowManager.removeScreenRecordingCallback( mCallback) }
stopped state • Required changes for some apps to support private space • PNG-based emoji font removed • Minimum installable target API level (min API target = 24) • Predictive back animations enabled for apps that opted in
audio focus • Changes to when apps can modify the global state of Do Not Disturb mode • OpenJDK API changes • Secured background activity launches • Safer intents • Edge-to-edge enforcement • Configuration, TextView, EditText changes
Faire les changements nécessaires aux nouvelles User Privacy Guidelines Publier une mise à jour Tester Implémenter les nouvelles features Android 15 BONUS POINT !