Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈ Π²ΡΠΎΡΠ°ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ²ΠΎΡΡΠ° ΠΎΡΠ²ΠΎΡΠ΅Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°. Android 12. ΠΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Android ΠΡΠ°ΠΊΠ²Π° ΡΠ΅ 12 ΠΏΡΠ΅Π· ΡΡΠ΅ΡΠΎΡΠΎ ΡΡΠΈΠΌΠ΅ΡΠ΅ΡΠΈΠ΅ Π½Π° 2021 Π³. ΠΠ°Π»ΠΈΡΠ½Π° Π΅ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½Π° ΡΠ΅ΡΡΠΎΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° Π·Π° ΠΎΡΠ΅Π½ΠΊΠ° Π½Π° Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ°. ΠΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ ΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈ Π½Π° ΡΡΡΠΌΡΠ΅ΡΠ° Π·Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΡΠ° Pixel 3/3 XL, Pixel 3a/3a XL, Pixel 4/4 XL, Pixel 4a/4a 5G ΠΈ Pixel 5. ΠΠ°Π»ΠΈΡΠ½Π° Π΅ OTA Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π·Π° ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π»ΠΈ ΠΏΡΡΠ²Π°ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ.
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ Android 12:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ ΠΊΡΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΡΡ Π·Π°ΠΎΠ±Π»Π΅Π½ΠΈ Π΅ΠΊΡΠ°Π½ΠΈ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π·Π°ΠΊΡΡΠ³Π»ΡΠ½ΠΈΡΡΠ° Π½Π° Π΅ΠΊΡΠ°Π½Π° ΠΈ Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Ρ Π²ΡΡΡ
Ρ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΈΡΠ΅ ΡΠ³Π»ΠΎΠ²ΠΈ Π·ΠΎΠ½ΠΈ. Π§ΡΠ΅Π· Π½ΠΎΠ²ΠΈΡ RoundedCorner API ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠΊΡΠΈΠ΅ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΊΠ°ΡΠΎ ΡΠ°Π΄ΠΈΡΡΠ° ΠΈ ΡΠ΅Π½ΡΡΡΠ° Π½Π° Π·Π°ΠΊΡΡΠ³Π»ΡΠ²Π°Π½Π΅ΡΠΎ, Π° ΡΡΠ΅Π· Display.getRoundedCorner() ΠΈ WindowInsets.getRoundedCorner() ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈΡΠ΅ Π½Π° Π²ΡΠ΅ΠΊΠΈ Π·Π°ΠΎΠ±Π»Π΅Π½ ΡΠ³ΡΠ» Π½Π° Π΅ΠΊΡΠ°Π½Π°.

- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ ΠΊΠ°ΡΡΠΈΠ½Π° Π² ΠΊΠ°ΡΡΠΈΠ½Π°ΡΠ° (PIP, ΠΠ°ΡΡΠΈΠ½Π° Π² ΠΊΠ°ΡΡΠΈΠ½Π°ΡΠ°) ΠΈ ΠΏΠΎΠ²ΠΈΡΠ΅Π½Π° ΠΏΠ»Π°Π²Π½ΠΎΡΡ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅Ρ ΠΎΠ΄Π°. ΠΠΊΠΎ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅Π½ ΠΏΡΠ΅Ρ ΠΎΠ΄ ΠΊΡΠΌ PIP Ρ ΠΆΠ΅ΡΡ Π½Π°Π³ΠΎΡΠ΅ ΠΊΡΠΌ Π½Π°ΡΠ°Π»Π½ΠΈΡ Π΅ΠΊΡΠ°Π½ (ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° Π΄ΠΎΠ»Π½Π°ΡΠ° ΡΠ°ΡΡ Π½Π° Π΅ΠΊΡΠ°Π½Π° Π½Π°Π³ΠΎΡΠ΅), ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π²Π΅Π΄Π½Π°Π³Π° ΡΠ΅ ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ²Π° Π² ΡΠ΅ΠΆΠΈΠΌ PIP, Π±Π΅Π· Π΄Π° ΡΠ°ΠΊΠ° Π°Π½ΠΈΠΌΠ°ΡΠΈΡΡΠ° Π΄Π° Π·Π°Π²ΡΡΡΠΈ. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΎ ΠΏΡΠ΅ΠΎΡΠ°Π·ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° PIP ΠΏΡΠΎΠ·ΠΎΡΡΠΈ Ρ Π½Π΅Π²ΠΈΠ΄Π΅ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° PIP ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΠ° ΡΡΠ΅Π· ΠΏΠ»ΡΠ·Π³Π°Π½Π΅ ΠΊΡΠΌ Π»Π΅Π²ΠΈΡ ΠΈΠ»ΠΈ Π΄Π΅ΡΠ½ΠΈΡ ΠΊΡΠ°ΠΉ Π½Π° Π΅ΠΊΡΠ°Π½Π°. ΠΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ ΠΏΡΠΈ Π΄ΠΎΠΊΠΎΡΠ²Π°Π½Π΅ Π½Π° PIP ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ Π΅ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ΠΎ - Π΅Π΄Π½ΠΎ Π΄ΠΎΠΊΠΎΡΠ²Π°Π½Π΅ Π²Π΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈΡΠ΅ Π±ΡΡΠΎΠ½ΠΈ, Π° Π΄Π²ΠΎΠΉΠ½ΠΎ Π΄ΠΎΠΊΠΎΡΠ²Π°Π½Π΅ ΠΏΡΠΎΠΌΠ΅Π½Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² CompanionDeviceService API, Ρ ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Ρ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°ΡΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠ°ΡΠΎ ΡΠΌΠ°ΡΡ ΡΠ°ΡΠΎΠ²Π½ΠΈΡΠΈ ΠΈ ΡΠΈΡΠ½Π΅Ρ ΡΡΠ°ΠΊΠ΅ΡΠΈ. API ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΡΡ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ ΠΈ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠ³Π°ΡΠΎ Π½Π°Π±Π»ΠΈΠ·ΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΠΈ ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°ΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ. Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΡΡΠ»ΡΠ³Π°ΡΠ°, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΅ Π½Π°Π±Π»ΠΈΠ·ΠΎ ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΈΠ·Π²Π΅ΡΡΠΈΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΎ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ Π½Π°Π²Π»Π΅Π·Π΅ ΠΈΠ»ΠΈ Π½Π°ΠΏΡΡΠ½Π΅ Π·ΠΎΠ½Π°ΡΠ° Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΠΌΠΎΠ³Π°Ρ ΡΡΡΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π½ΠΎΠ²ΠΈΡ ΠΏΡΠΎΡΠΈΠ» Π½Π° ΠΏΡΠΈΠ΄ΡΡΠΆΠ°Π²Π°ΡΠΎΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ, Π·Π° Π΄Π° Π½Π°ΡΡΡΠΎΡΡ ΠΏΠΎ-Π»Π΅ΡΠ½ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π° ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ ΠΊΡΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠ°ΠΏΠ°ΡΠΈΡΠ΅ΡΠ°. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠ°Π½Π°ΡΠ° ΠΎΠ±ΡΠ° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°, ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° Π±Π΅Π·ΠΆΠΈΡΠ½Π° ΠΌΡΠ΅ΠΆΠ° (Wi-Fi SSID), ΡΠΈΠΏ ΠΌΡΠ΅ΠΆΠ° ΠΈ ΡΠΈΠ»Π° Π½Π° ΡΠΈΠ³Π½Π°Π»Π°.
- ΠΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠΈ Π²ΠΈΠ·ΡΠ°Π»Π½ΠΈ Π΅ΡΠ΅ΠΊΡΠΈ, ΠΊΠ°ΡΠΎ Π·Π°ΠΌΡΠ³Π»ΡΠ²Π°Π½Π΅ ΠΈ ΠΈΠ·ΠΊΡΠΈΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ²Π΅ΡΠΎΠ²Π΅ΡΠ΅, Π΅ ΠΎΠΏΡΠΎΡΡΠ΅Π½ΠΎ ΠΈ Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° RenderEffect API ΠΊΡΠΌ Π²ΡΠ΅ΠΊΠΈ RenderNode ΠΎΠ±Π΅ΠΊΡ ΠΈΠ»ΠΈ ΡΡΠ»Π°ΡΠ° Π²ΠΈΠ΄ΠΈΠΌΠ° ΠΎΠ±Π»Π°ΡΡ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠ² Π²Π΅ΡΠΈΠ³Π° Ρ Π΄ΡΡΠ³ΠΈ Π΅ΡΠ΅ΠΊΡΠΈ. Π’Π°Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π·Π°ΠΌΡΠ³Π»ΠΈΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΡΡΠ΅Π· ImageView, Π±Π΅Π· ΠΈΠ·ΡΠΈΡΠ½ΠΎ ΠΊΠΎΠΏΠΈΡΠ°Π½Π΅, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ Π·Π°ΠΌΡΠ½Π° Π½Π° ΡΠ°ΡΡΠ΅ΡΠ½ΠΎΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°ΠΉΠΊΠΈ ΡΠ΅Π·ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΡΠΌ ΡΡΡΠ°Π½Π°ΡΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ°. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Window.setBackgroundBlurRadius() API, Ρ ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΌΡΠ³Π»ΠΈΡΠ΅ ΡΠΎΠ½Π° Π½Π° ΠΏΡΠΎΠ·ΠΎΡΠ΅Ρ Ρ Π΅ΡΠ΅ΠΊΡ Π½Π° ΠΌΠ°ΡΠΈΡΠ°Π½ΠΎ ΡΡΡΠΊΠ»ΠΎ ΠΈ Π΄Π° ΠΏΠΎΠ΄ΡΠ΅ΡΡΠ°Π΅ΡΠ΅ Π΄ΡΠ»Π±ΠΎΡΠΈΠ½Π°ΡΠ°, ΠΊΠ°ΡΠΎ Π·Π°ΠΌΡΠ³Π»ΠΈΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ ΠΎΠΊΠΎΠ»ΠΎ ΠΏΡΠΎΠ·ΠΎΡΠ΅ΡΠ°.

- ΠΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΏΡΠ΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈ ΠΏΠΎΡΠΎΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² ΡΡΠ΅Π΄ΠΈ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΊΠ°ΠΌΠ΅ΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π° Π²ΠΈΠ΄Π΅ΠΎ Π²ΡΠ² ΡΠΎΡΠΌΠ°Ρ HEVC, Π·Π° Π΄Π° ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠΎΠ·ΠΈ ΡΠΎΡΠΌΠ°Ρ. ΠΠ° ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ ΠΊΡΠΌ ΠΏΠΎ-ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ΠΈΡ AVC ΡΠΎΡΠΌΠ°Ρ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ AVIF (AV1 Image Format), ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° Π²ΡΡΡΠ΅ΡΠ½ΠΎΠΊΠ°Π΄ΡΠΎΠ²ΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ ΠΎΡ ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ AV1. ΠΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡΡ Π·Π° ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π² AVIF Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° HEIF. AVIF ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΊΠ°ΠΊΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² HDR (High Dynamic Range) ΠΈ ΡΠ²Π΅ΡΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Ρ ΡΠΈΡΠΎΠΊΠ° Π³Π°ΠΌΠ°, ΡΠ°ΠΊΠ° ΠΈ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅Π½ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (SDR).
- ΠΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°, Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° Π΅ Π·Π°Π±ΡΠ°Π½Π΅Π½ΠΎ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΡΡΠ»ΡΠ³ΠΈ Π½Π° ΠΏΡΠ΅Π΄Π΅Π½ ΠΏΠ»Π°Π½, Π΄ΠΎΠΊΠ°ΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π²ΡΠ² ΡΠΎΠ½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ, ΠΎΡΠ²Π΅Π½ Π² Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΡΠ»ΡΡΠ°Ρ. ΠΠ° Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ° Π²ΡΠ² ΡΠΎΠ½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ, ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ WorkManager. ΠΠ° Π΄Π° ΡΠ΅ ΠΎΠΏΡΠΎΡΡΠΈ ΠΏΡΠ΅Ρ ΠΎΠ΄ΡΡ, Π² JobScheduler Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π½ΠΎΠ² ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΠ°, ΠΊΠΎΡΡΠΎ Π·Π°ΠΏΠΎΡΠ²Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ, ΠΈΠΌΠ° ΠΏΠΎΠ²ΠΈΡΠ΅Π½ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΠΈ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ°.
- ΠΡΠ΅Π΄Π»Π°Π³Π° ΡΠ΅ ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½ API Π½Π° OnReceiveContentListener Π·Π° Π²ΠΌΡΠΊΠ²Π°Π½Π΅ ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ (ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½ ΡΠ΅ΠΊΡΡ, ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π²ΠΈΠ΄Π΅ΠΎΠΊΠ»ΠΈΠΏΠΎΠ²Π΅, Π°ΡΠ΄ΠΈΠΎ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Ρ.Π½.) ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠ»ΠΈΠΏΠ±ΠΎΡΠ΄Π°, ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ° ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π·Π° ΠΏΠ»ΡΠ·Π³Π°Π½Π΅ ΠΈ ΠΏΡΡΠΊΠ°Π½Π΅.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΅ΡΠ΅ΠΊΡ Π½Π° ΡΠ°ΠΊΡΠΈΠ»Π½Π° ΠΎΠ±ΡΠ°ΡΠ½Π° Π²ΡΡΠ·ΠΊΠ°, ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΡ Π² ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΈΡΠ΅ Π²ΠΈΠ±ΡΠ°ΡΠΈΠΎΠ½Π΅Π½ ΠΌΠΎΡΠΎΡ, ΡΠΈΡΡΠΎ ΡΠ΅ΡΡΠΎΡΠ° ΠΈ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΡΠ΅Ρ Π½Π° Π²ΠΈΠ±ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΊΡΡΠΎ ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½ΠΈΡ Π·Π²ΡΠΊ. ΠΠΎΠ²ΠΈΡΡ Π΅ΡΠ΅ΠΊΡ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄Π° ΡΡΠ΅ΡΠΈΡΠ΅ Π·Π²ΡΠΊΠ° ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΡΠ΅Π°Π»ΠΈΠ·ΡΠΌ ΠΊΡΠΌ ΠΈΠ³ΡΠΈΡΠ΅ ΠΈ Π·Π²ΡΠΊΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ.
- Π ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΏΠΎΡΠ°ΠΏΡΠ½Π΅, Π² ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π½Π° ΡΡΠ» Π΅ΠΊΡΠ°Π½ ΡΡΡ ΡΠΊΡΠΈΡΠΈ ΡΠ΅ΡΠ²ΠΈΠ·Π½ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ, Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡΡΠ° Π΅ ΠΎΠΏΡΠΎΡΡΠ΅Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΆΠ΅ΡΡΠΎΠ²Π΅ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ½ΠΈΠ³ΠΈ, Π²ΠΈΠ΄Π΅ΠΎΠΊΠ»ΠΈΠΏΠΎΠ²Π΅ ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ Π²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ Π½Π°Π²ΠΈΠ³ΠΈΡΠ°Ρ Ρ Π΅Π΄ΠΈΠ½ ΠΆΠ΅ΡΡ Π½Π° ΠΏΠ»ΡΠ·Π³Π°Π½Π΅.
- ΠΠΈΠ·Π°ΠΉΠ½ΡΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Ρ Π·Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡ Π΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½, ΠΊΠΎΠ΅ΡΠΎ Π³ΠΎ ΠΏΡΠ°Π²ΠΈ ΠΏΠΎ-ΠΏΡΠΎΡΡ ΠΈ ΠΏΠΎ-ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅Π½. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡΡΠ° ΠΈ Π΅ΡΠ΅ΠΊΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅Ρ ΠΎΠ΄ ΡΡΡΠΎ ΡΠ° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΈ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΏΠΎ-ΠΏΠ»Π°Π²Π½ΠΈ. Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡΡΠ° ΡΡΡ Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ΅ ΠΏΠΎΠ΄Π°Π²Π°Ρ Π² ΠΎΠ±Ρ Π²ΠΈΠ΄.
- ΠΠΎΠ²ΠΈΡΠ΅Π½Π° ΠΎΡΠ·ΠΈΠ²ΡΠΈΠ²ΠΎΡΡ ΠΈ ΡΠΊΠΎΡΠΎΡΡ Π½Π° ΡΠ΅Π°ΠΊΡΠΈΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΠ·Π²Π΅ΡΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π΄ΠΎΠΊΠΎΡΠ½Π΅ ΠΈΠ·Π²Π΅ΡΡΠΈΠ΅, ΡΠΎ Π²Π΅Π΄Π½Π°Π³Π° Π³ΠΎ ΠΎΡΠ²Π΅ΠΆΠ΄Π° Π΄ΠΎ ΡΠ²ΡΡΠ·Π°Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΠΌΠΏΠ»ΠΈΠ½ΠΈ Π·Π° ΡΠ²Π΅Π΄ΠΎΠΌΡΠ²Π°Π½Π΅.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ IPC ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ Π² Binder. Π§ΡΠ΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½ΠΎΠ²Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Π·Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ ΠΈ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΈΡΡΠ° Π·Π° Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅, Π·Π°Π±Π°Π²ΡΠ½Π΅ΡΠΎ Π±Π΅ΡΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»Π΅Π½ΠΎ. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΎΠ±Π°ΠΆΠ΄Π°Π½ΠΈΡΡΠ° Π½Π° Binder ΡΠ΅ Π΅ ΡΠ΄Π²ΠΎΠΈΠ»Π°, Π½ΠΎ ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ, ΠΊΡΠ΄Π΅ΡΠΎ ΡΠ° ΠΏΠΎΡΡΠΈΠ³Π½Π°ΡΠΈ ΠΎΡΠ΅ ΠΏΠΎ-Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° refContentProvider() ΡΡΠ°Π½Π° 47 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ, releaseWakeLock() 15 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΈ JobScheduler.schedule() 7.9 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ.
- ΠΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Mainline, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π±Π΅Π· Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ»Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, ΡΠ° ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ Π½ΠΎΠ²ΠΈ ΠΎΠ±Π½ΠΎΠ²ΡΠ΅ΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ 22-ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»Π°, Π½Π°Π»ΠΈΡΠ½ΠΈ Π² Android 11. ΠΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π·Π°ΡΡΠ³Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ°, Π° ΡΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΡΡ ΡΡΠ΅Π· Google Play ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΠΎΡ OTA Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π½Π° ΡΡΡΠΌΡΠ΅ΡΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ. Π‘ΡΠ΅Π΄ Π½ΠΎΠ²ΠΈΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΡΡΠ΅Π· Google Play Π±Π΅Π· Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΠΌΡΠ΅ΡΠ°, ΡΠ° ART (Android Runtime) ΠΈ ΠΌΠΎΠ΄ΡΠ» Π·Π° ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ.
- Π‘ΠΈΠ³ΡΡΠ½ΠΎΡΡ ΠΈ ΠΏΠΎΠ²Π΅ΡΠΈΡΠ΅Π»Π½ΠΎΡΡ.
- Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Π΅ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Ρ ΠΈΠ·ΡΠΊΠ°ΡΠ°ΡΠΈΡΠ΅ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°Ρ ΡΡΡ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°ΡΠΈ ΡΠ΅ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°ΡΠ΅ ΠΎΡ Π·Π°ΡΠ²ΠΊΠ° Π·Π° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π°Π²Π°ΡΠ΅ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠΊΠ°Π·Π²Π°ΡΠΈ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°ΡΠΈ ΡΠ΅ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ. ΠΡΠΌΠ°ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π΄Π°Π»ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ ΡΠ΅ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π° ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΈΠΈΡΠΎ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ ΡΠ΅ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°Ρ. ΠΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Window#setHideOverlayWindows() ΠΡΠΈΡΠΊΠΈ ΠΏΡΠΎΠ·ΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΈΠΏΠΎΠΊΡΠΈΠ²Π°Ρ ΡΡΡ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, Π²Π΅ΡΠ΅ ΡΠ΅ ΡΠ΅ ΡΠΊΡΠΈΠ²Π°Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²Π°ΠΆΠ½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ.
- ΠΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΡΠ΅ Π΄Π°Π²Π°Ρ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΡΠ²Π΅Π΄ΠΎΠΌΡΠ²Π°Π½Π΅, Π΄ΠΎΠΊΠ°ΡΠΎ Π΅ΠΊΡΠ°Π½ΡΡ Π΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΈΠΌΠ°Ρ ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡΠ° Π½Π° ΠΈΠ·Π²Π΅ΡΡΠΈΡΡΠ° ΡΠ°ΠΌΠΎ Π΄ΠΎΠΊΠ°ΡΠΎ Π΅ΠΊΡΠ°Π½ΡΡ Π΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½, Π½ΠΎ ΡΠ΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎΡΠΎ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅, Π·Π° Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΈΠ·Π²Π΅ΡΡΠΈΡ, Π΄ΠΎΠΊΠ°ΡΠΎ Π΅ΠΊΡΠ°Π½ΡΡ Π΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΈΠ·ΡΡΠΈΠ΅ ΠΈΠ»ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠ° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΡΠ΅ΡΠ΅Π½ΠΎ.
- ΠΠΎΠ±Π°Π²Π΅Π½ API Π½Π° PackageManager.requestChecksums() Π·Π° Π·Π°ΡΠ²ΠΊΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½Π°ΡΠ° ΡΡΠΌΠ° Π½Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Ρ SHA256, SHA512 ΠΈ Merkle Root.
- Π£Π΅Π± ΠΌΠ°ΡΠΈΠ½Π°ΡΠ° WebView ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π°ΡΡΠΈΠ±ΡΡΠ° SameSite Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π±ΠΈΡΠΊΠ²ΠΈΡΠΊΠΈ. Π‘ΡΠΎΠΉΠ½ΠΎΡΡΡΠ° βSameSite=Laxβ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π° Π±ΠΈΡΠΊΠ²ΠΈΡΠΊΠ°ΡΠ°, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π·Π° ΠΏΠΎΠ΄Π·Π°ΡΠ²ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°ΠΉΡΠΎΠ²Π΅, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠ΅Π· iframe ΠΎΡ Π΄ΡΡΠ³ ΡΠ°ΠΉΡ. Π ΡΠ΅ΠΆΠΈΠΌ βSameSite=Strictβ Π±ΠΈΡΠΊΠ²ΠΈΡΠΊΠΈΡΠ΅ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ Π·Π° Π½ΠΈΠΊΠ°ΠΊΡΠ² Π²ΠΈΠ΄ ΠΌΠ΅ΠΆΠ΄ΡΡΠ°ΠΉΡΠΎΠ²ΠΈ Π·Π°ΡΠ²ΠΊΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²ΡΠΈΡΠΊΠΈ Π²Ρ ΠΎΠ΄ΡΡΠΈ Π²ΡΡΠ·ΠΊΠΈ ΠΎΡ Π²ΡΠ½ΡΠ½ΠΈ ΡΠ°ΠΉΡΠΎΠ²Π΅.
- ΠΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π°ΠΌΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈΠΌ Π²ΡΡΡ Ρ ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° MAC Π°Π΄ΡΠ΅ΡΠΈ, Π·Π° Π΄Π° Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°ΠΌΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ Π΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ ΠΊΡΠΌ Π±Π΅Π·ΠΆΠΈΡΠ½Π° ΠΌΡΠ΅ΠΆΠ°. ΠΠ΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠΌΠ°Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ MAC Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ ΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° getHardwareAddress() Π²Π΅ΡΠ΅ Π²ΡΡΡΠ° Π½ΡΠ»Π΅Π²Π° ΡΡΠΎΠΉΠ½ΠΎΡΡ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru


