ΡΡΠΎ Π·Π½Π°ΡΠΈΡ ΡΠΎΠΊΡΡ Π°ΡΠ΄ΠΈΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠΎΠΌ
ΠΠ°ΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ Π·Π²ΡΠΊ. Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ, ΡΡΠΎΠ±Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π·Π°Ρ Π²Π°ΡΠΈΠ²ΡΠ΅Π΅ ΡΠΎΠΊΡΡ, ΠΌΠΎΠ³Π»ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ Π² ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΠ°ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ ΡΠΎΠΊΡΡΠ° ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ.
ΠΠ°ΠΏΡΠΎΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ°
ΠΡΠ°ΠΊ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Ρ Π²Π°ΡΠΈΡΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ Π°ΡΠ΄ΠΈΠΎ-ΠΏΠΎΡΠΎΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π»ΡΠ±ΡΡ Π·Π²ΡΠΊΠΎΠ². ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° requestAudioFocus(), ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ AUDIOFOCUS_REQUEST_GRANTED Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅Ρ Π°.
ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΠΎΠΊ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊΡΡ. ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠΎΠΊΡΡ, Π΅ΡΠ»ΠΈ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ Π·Π²ΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ). ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊΡΡ, Π΅ΡΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ Π±Π΅Π· ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ Π² ΠΎΠ±ΠΎΠ·ΡΠΈΠΌΠΎΠΌ Π±ΡΠ΄ΡΡΠ΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ ΠΌΡΠ·ΡΠΊΡ Π² ΠΏΠ»Π΅Π΅ΡΠ΅).
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ ΠΊΠ°ΠΊ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊΡΡ Π΄Π»Ρ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ°. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΏΡΠΎΡΠΈΡ ΡΠΎΠΊΡΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ βΠ²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈβ Π² ΠΏΠ»Π΅Π΅ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΈ Π½Π°ΡΠ°Π»Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π² ΠΈΠ³ΡΠ΅ (Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΡΠ·ΡΠΊΠΈ Π½Π° Π·Π°Π΄Π½Π΅ΠΌ ΡΠΎΠ½Π΅):
Π‘ΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ abandonAudioFocus() Π΄Π»Ρ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ ΡΠΎΠΊΡΡΠ°. ΠΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ΅Π½ ΠΈ ΠΎΡΠΌΠ΅Π½ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ AudioManager.OnAudioFocusChangeListener. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ°, Π»ΡΠ±ΠΎΠ΅ ΠΏΡΠ΅ΡΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠ»Ρ Π·Π°ΠΏΡΠΎΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ° Π΅ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ: Ρ ΠΎΡΠΈΡΠ΅ Π»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ βduckingβ. βΠΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π·Π°Π³Π»ΡΡΠ°ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΠΎΡΠ΅ΡΠ΅ ΡΠΎΠΊΡΡΠ°. ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ducking. ΠΡ ΡΠΎΠΎΠ±ΡΠ°Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ±Π°Π²ΠΈΠ² Π³ΡΠΎΠΌΠΊΠΎΡΡΡ, ΠΏΠΎΠΊΠ° ΡΠΎΠΊΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Ρ Π²Π°Ρ.
Ducking ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅ΡΡΠ²ΠΈΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π°ΡΠ΄ΠΈΠΎ-ΠΏΠΎΡΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ.
ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠΊΡΡ ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π²ΡΡΠ΅, ΠΎΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΌ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ (Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ducking ΠΈΠ»ΠΈ Π½Π΅Ρ) ΡΠΎΠΊΡΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ.
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΠΎΡΠ΅ΡΠΈ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ°
ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΡΠΎΠΊΡΡ, ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π΅Π³ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΠ΅ΡΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΠΊΡΡΠ°, Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΡΠ» ΠΏΠΎΡΠ΅ΡΡΠ½.
ΠΠ΅ΡΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° onAudioFocusChange() Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠΎΠΊΡΡΠ° ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠΈΠΏ ΡΠΎΠ±ΡΡΠΈΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΡΠ²Π»ΡΡΡΡΡ Π±Π»ΠΈΠ·Π½Π΅ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΡΠΈΠΏΠΎΠ² ΡΠΎΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΡΠΆΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ β ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ, Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Π½ΡΠΌ ducking.
ΠΠΎΠΎΠ±ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΠΊΡΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΈΠ³Π»ΡΡΠΈΡΡ Π·Π²ΡΠΊ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π½ΠΎ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ° ΠΈ Π±ΡΡΡ Π³ΠΎΡΠΎΠ²Ρ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΊΡΡ Π²Π΅ΡΠ½ΡΠ»ΡΡ.
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΠΊΡΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ, Π·Π½Π°ΡΠΈΡ Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ Π°ΡΠ΄ΠΈΠΎ ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ΅Π±Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ. ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π·Π°Π²Π΅ΡΡΠΈΡΡ, Π·Π½Π°ΡΠΈΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π²ΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π½Π°ΠΆΠ°ΡΠΈΡ Π½Π° ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΡΠΎΠΊΡΡΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠ΅ ΡΠΎΠΊΡΡΠ° ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ Π΅Π³ΠΎ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΊΡΡ Π²Π΅ΡΠ½ΡΠ»ΡΡ. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ, ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠ΅Π΄ΠΈΠ°-ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠΊΡΡΠ°:
Π ΡΡΡΠΊΠΈΠ΅ ΠΠ»ΠΎΠ³ΠΈ
ΠΠ²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Android ΠΌΠΎΠ³ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ Π² ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π²ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΡΠΎΠΊ. Π‘ΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π΅Ρ. Π₯ΠΎΡΡ ΡΡΠΎ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΠ΅Ρ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°Π΅Ρ. Π§ΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² Android Π²Π²Π΅Π΄Π΅Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΡΠΎΠΊΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π·Π²ΡΠΊΠ°. Π’ΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π²ΡΠΊ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ.
ΠΠΎΠ³Π΄Π° Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄ Π·Π²ΡΠΊΠ°, ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠΎΠΊΡΡ Π·Π²ΡΠΊΠ°. ΠΠΎΠ³Π΄Π° ΠΎΠ½ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠΎΠΊΡΡΠ΅, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠΊΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π·Π²ΡΠΊΠ° Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ, ΠΏΠΎΠΊΠ° Π½Π΅ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΡΠΎΠΊΡΡ, ΠΈ ΡΡΠΎ Π²ΡΡΠ΅ΡΠ½ΠΈΡ Π²Π°Ρ Π°ΡΠ΄ΠΈΠΎ ΡΠΎΠΊΡΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΡΡΠ»ΡΡΠ°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ Π·Π²ΡΠΊΠ°.
ΠΡΠ΄ΠΈΠΎ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π½Π° ΡΠΎΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ ΠΏΠΎ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΡ, Π½ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°. ΠΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΠΊΡΡΠ° Π·Π²ΡΠΊΠ°, Π½ΠΈΡΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π΅Π³ΠΎ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ. ΠΡΠΎ ΠΏΠ»ΠΎΡ ΠΎΠΉ ΠΎΠΏΡΡ, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΠ΄Π°Π»ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠ»ΠΎΡ ΠΎΠΉ ΠΎΠΏΡΡ.
Π₯ΠΎΡΠΎΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π²ΡΠΊΠΎΠ²ΡΠΌ ΡΠΎΠΊΡΡΠΎΠΌ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠΈΠΌΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ:
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΡΠ°Π·Π»ΠΈΡΠ°Π΅ΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ Android:
ΠΡΠ΄ΠΈΠΎ ΡΠΎΠΊΡΡ Π½Π° Android 8.0 ΠΈ Π²ΡΡΠ΅
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Android 8.0 (ΡΡΠΎΠ²Π΅Π½Ρ API 26), ΠΊΠΎΠ³Π΄Π° Π²Ρ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ requestAudioFocus (), Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ AudioFocusRequest. Π§ΡΠΎΠ±Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ, Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ AbandonAudioFocusRequest (), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ AudioFocusRequest Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°. ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΠΈ ΠΎΡΠΊΠ°Π·Π΅ ΠΎΡ ΡΠΎΠΊΡΡΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ AudioFocusRequest.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ AudioFocusRequest, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ AudioFocusRequest. Builder. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π·Π°ΠΏΡΠΎΡ ΡΠΎΠΊΡΡΠ° Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠΈΠΏ, ΡΡΠΎΡ ΡΠΈΠΏ Π²ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΡΡΡΠΎΠΈΡΠ΅Π»Ρ, ΡΡΠΎΠ±Ρ Π·Π°Π΄Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ»Ρ Π·Π°ΠΏΡΠΎΡΠ°.
Π½ΡΠΆΠ½ΠΎ FocusGain ΠΠΎΠ»Ρ; Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ»Ρ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Ρ. ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄:
audioattributes ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΠ΅Ρ ΡΠΎΠΊΡΡ Π·Π²ΡΠΊΠ°, ΡΠΈΡΡΠ΅ΠΌΠ° Π±ΡΠ΄Π΅Ρ ΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π½ΠΈΡ . ΠΡΡΠΈΠ±ΡΡΡ Π·Π°ΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΏΠΎΡΠΎΠΊΠΎΠ². Π Android 8.0 (ΡΡΠΎΠ²Π΅Π½Ρ API 26) ΠΈ Π²ΡΡΠ΅ Π»ΡΠ±Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, ΠΊΡΠΎΠΌΠ΅ ΡΠ΅Π³ΡΠ»ΠΈΡΠΎΠ²ΠΊΠΈ Π³ΡΠΎΠΌΠΊΠΎΡΡΠΈ, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΈΠΏ ΠΏΠΎΡΠΎΠΊΠ°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅ ΠΆΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠΎΠΊΡΡΠ°, ΡΡΠΎ ΠΈ Π² Π°ΡΠ΄ΠΈΠΎΠΏΠ»Π΅Π΅ΡΠ΅ (ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π½ΠΈΠΆΠ΅).
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠ΄ΠΈΠ½AudioAttributes.BuilderΠ‘Π½Π°ΡΠ°Π»Π° ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² Π·Π°ΠΏΡΠΎΡΡ.
ΠΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½ΠΎ, AudioAttributes ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ AudioAttributes.USAGE_MEDIA γ
ΠΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠΊΡΡΠ° ΡΡΠΎΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² onAudioFocusChange (), ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΠ°ΠΌΠ°. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΠΈ, Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ setWillPauseWhenDucked (true), ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ OnAudioFocusChangeListener, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ³Π»ΡΡΠ΅Π½ΠΈΠ΅Β» Π½ΠΈΠΆΠ΅.
ΠΠΎΠ³Π΄Π° ΡΠΎΠΊΡΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π·Π°ΠΏΡΠΎΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ ΡΠΎΠΊΡΡΠ°: Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ°, ΠΊΠΎΠ³Π΄Π° ΡΠΎΠΊΡΡ Π΄ΠΎΡΡΡΠΏΠ΅Π½.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠΎΠΊΡΡΠ° Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΠΈ AudioManager.OnAudioFocusChangeListener. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ², ΡΡΠΎΠ±Ρ Π·Π½Π°ΡΡ, ΡΡΠΎ ΡΠΎΠΊΡΡ Π±ΡΠ» ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ.
OnAudioFocusChangeListener ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΎ willPauseWhenDucked (true) ΠΈΠ»ΠΈ setAcceptsDelayedFocusGain (true).
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ AudioFocusRequest.Bulder Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ AudioFocusRequest ΠΈ Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ ΡΠΎΠΊΡΡΠ° Π·Π²ΡΠΊΠ°:
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π½ΡΡΡΠ½ΠΈΠ΅
Π Android 8.0 (ΡΡΠΎΠ²Π΅Π½Ρ API 26), ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK ΠΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠΎΠΊΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π²ΡΠΊΠ°, Π½Π΅ Π²ΡΠ·ΡΠ²Π°Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ onAudioFocusChange() ΠΠ΅ΡΠ΅Π·Π²ΠΎΠ½ΠΈΡΡ.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΌΡΠ·ΡΠΊΠΈ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ Π³ΡΠΎΠΌΠΊΠΎΡΡΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ΅ΠΌΠ»Π΅ΠΌΡΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, Π½ΠΎ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π°ΡΠ΄ΠΈΠΎΠΊΠ½ΠΈΠ³ΠΈ). Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ.
ΠΠ°Π΄Π΅ΡΠΆΠΊΠ° Π² ΡΠΎΠΊΡΡΠ΅
Π§ΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π·Π°Π΄Π΅ΡΠΆΠ°Π½Π½ΠΎΠ΅ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ ΡΠΎΠΊΡΡΠ°, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ·Π΄Π°ΡΡ OnAudioFocusChangeListener, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° onAudioFocusChange () Π΄Π»Ρ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ, Π²ΡΠ·Π²Π°Π² setOnAudioFocusChangeListener ().
ΠΠΎ Android 8.0 Π°ΡΠ΄ΠΈΠΎ ΡΠΎΠΊΡΡ
ΠΠΎΠ³Π΄Π° Π²Ρ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ requestAudioFocus (), Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠΎΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ:
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ Π² ΠΎΠ±ΠΎΠ·ΡΠΈΠΌΠΎΠΌ Π±ΡΠ΄ΡΡΠ΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΌΡΠ·ΡΠΊΠΈ), Π·Π°ΠΏΡΠΎΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠΎΠΊΡΡ (AUDIOFOCUS_GAIN), ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π΄Π΅ΡΠΆΠ°ΡΠ΅Π»Ρ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ° ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΠ» Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠΎΠΊΡΡ (AUDIOFOCUS_GAIN_TRANSIENT), Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π²Π»Π°Π΄Π΅Π»Π΅Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠ°ΠΏΡΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π½ΡΠΉ ΡΠΎΠΊΡΡ ΠΏΡΠΈΠ³Π»ΡΡΠ΅Π½ΠΈΡ (AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK), ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π·Π²ΡΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΈ Π΅ΡΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π²Π»Π°Π΄Π΅Π»Π΅Ρ ΡΠΎΠΊΡΡΠ° Β«ΠΏΡΠΈΠ³Π½ΡΠ»Β» (ΠΎΠΏΡΡΡΠΈΠ») ΡΠ²ΠΎΠΉ Π°ΡΠ΄ΠΈΠΎΠ²ΡΡ ΠΎΠ΄, Π²Ρ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΠ±Π° Π°ΡΠ΄ΠΈΠΎΠ²ΡΡ ΠΎΠ΄Π° ΠΌΠΈΠΊΡΠΈΡΡΡΡΡΡ Π² Π°ΡΠ΄ΠΈΠΎΠΏΠΎΡΠΎΠΊ. Ducking ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π°ΡΠ΄ΠΈΠΎΠΏΠΎΡΠΎΠΊΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π·Π²ΡΠΊΠΎΠ²ΡΡ Π΄ΠΎΡΠΎΠΆΠ΅ΠΊ.
ΠΠ»Ρ ΠΌΠ΅ΡΠΎΠ΄Π° requestAudioFocus () ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ AudioManager.OnAudioFocusChangeListener. ΠΡΠΎΡ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ Π² ΡΠΎΠΌ ΠΆΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ ΠΈΠ»ΠΈ ΡΠ»ΡΠΆΠ±Π΅, ΡΡΠΎ ΠΈ Π²Π°Ρ ΠΌΠ΅Π΄ΠΈΠ°-ΡΠ΅Π°Π½Ρ. ΠΠ½ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² onAudioFocusChange (), ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΡΠΎΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Ρ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ°ΠΆΡΡΡΡ ΠΎΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ°.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊΡΡ Π°ΡΠ΄ΠΈΠΎ Π½Π° ΠΏΠΎΡΠΎΠΊΠ΅ STREAM_MUSIC ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅Ρ OnAudioFocusChangeListener Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠΎΠΊΡΡΠ΅ Π·Π²ΡΠΊΠ°. (ΠΠΎΠ΄Π Π΅Π°ΠΊΡΠΈΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ°Π§Π°ΡΡΡ ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅Ρ ΡΠΌΠ΅Π½Ρ ΡΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ. )
ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ ΠΈΠ³ΡΠ°ΡΡ, Π²ΡΠ·ΠΎΠ²ΠΈΡΠ΅ AbandonAudioFocus ().
ΠΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ΅Π½ ΡΠΎΠΊΡΡ, ΠΈ ΠΎΡΠΌΠ΅Π½ΠΈΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ³ΠΎ OnAudioFocusChangeListener. ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠΎΠΊΡΡ, ΡΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ³Π»ΡΡΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ.
Π Π΅Π°ΠΊΡΠΈΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π·Π²ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΡΠΎΠΊΡΡΠ°
ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠΎΠΊΡΡ, ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠΎΠΊΡΡ. ΠΠΎΠ³Π΄Π° ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° onAudioFocusChange () Π² AudioFocusChangeListener, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠΊΠ°Π·Π°Π½ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ requestAudioFocus ().
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ focusChange, ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ Π² onAudioFocusChange (), ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡΠ΅Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ΠΠ½ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ°. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄Π½ΡΠΉ Π½Π΅ Π² ΡΠΎΠΊΡΡΠ΅
ΠΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠΊΡΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ (AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK ΠΈΠ»ΠΈ AUDIOFOCUS_LOSS_TRANSIENT), ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ (Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΠ΅ΡΡ Π½Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ³Π»ΡΡΠ΅Π½ΠΈΠ΅) ΠΈΠ»ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΎ ΠΆΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ.
ΠΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΠΊΡΡΠ° Π·Π²ΡΠΊΠ° Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠΎΠΊΡΡΠ΅ Π·Π²ΡΠΊΠ° ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ°. ΠΠΎΠ³Π΄Π° Π±Π»ΠΎΠΊΠΈΡΡΡΡΠ΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠ΅Ρ ΡΠΎΠΊΡΡ, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² ( AUDIOFOCUS_GAIN ). ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π³ΡΠΎΠΌΠΊΠΎΡΡΠΈ ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠΎΡΡΠΎΡΠ½Π½Π°Ρ ΠΏΠΎΡΠ΅ΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΠΊΡΡΠ° Π·Π²ΡΠΊΠ° Π½Π΅ΠΎΠ±ΡΠ°ΡΠΈΠΌΠ° ( AUDIOFOCUS_LOSS ), Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ Π·Π²ΡΠΊ. ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ AUDIOFOCUS_GAIN ΠΠ΅ΡΠ΅Π·Π²ΠΎΠ½ΠΈΡΡ. Π§ΡΠΎΠ±Ρ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ ΡΠ²Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°ΠΆΠ°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π² ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ OnAudioFocusChangeListener ΠΈ Π΅Π³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² onAudioFocusChange (). ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠΎΠΊΡΡ ΡΠ΅ΡΡΠ΅ΡΡΡ Π½Π°Π²ΡΠ΅Π³Π΄Π°.
ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Runnable, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ
— ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Audio Focus
ΠΠ°Π²Π΅ΡΠ½ΡΠΊΠ° Π²Ρ Π·Π°ΠΌΠ΅ΡΠ°Π»ΠΈ, ΡΡΠΎ ΠΏΡΠΈ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠΈ ΠΌΡΠ·ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, ΡΠΎ Π½Π° Π²ΡΠ΅ΠΌΡ Π·Π²ΡΡΠ°Π½ΠΈΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π·Π²ΡΠΊ ΠΌΡΠ·ΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π΅ΡΡΡ ΠΈΠ»ΠΈ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠΈΡΠ΅. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ°.
ΠΠΎΠΏΡΠΎΠ±ΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΡΡ Π΅ΠΌΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΎΠΊΡΡΠ° Π½Π° ΡΠ»ΠΎΠ²Π°Ρ . ΠΡΠ»ΠΈ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΡΠ·ΡΠΊΠΈ ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ, ΡΠΎ ΠΏΡΡΡΡ ΠΌΡΠ·ΡΠΊΡ ΠΈΠ³ΡΠ°Π΅Ρ Π½Π΅ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_1, Π° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π²ΡΠ΄Π°Π΅Ρ Π½Π΅ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_2. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_1, ΠΊΠΎΠ³Π΄Π° Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ, ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π΅Π³ΠΎ ΠΈ ΠΈΠ³ΡΠ°Π΅Ρ ΠΌΡΠ·ΡΠΊΡ. ΠΠ°Π»Π΅Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΡΠΌΡ ΠΈΠ»ΠΈ ΠΏΠΈΡΡΠΌΠΎ, ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_2 Ρ ΠΎΡΠ΅Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Π·Π²ΡΠΊ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ. ΠΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π΅Π³ΠΎ. ΠΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ ΡΠΎΠΊΡΡ ΡΠ΅ΠΉΡΠ°Ρ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ_1. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ_1, ΡΡΠΎ ΡΠΎΠΊΡΡ ΠΎΠ½ΠΎ ΠΏΠΎΠΊΠ° ΡΡΠΎ ΠΏΠΎΡΠ΅ΡΡΠ»ΠΎ. ΠΠ²ΡΠΊ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_2 ΠΎΡΠ΄Π°Π΅Ρ ΡΠΎΠΊΡΡ, Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ_1 ΡΠΎΠΎΠ±ΡΠ°ΡΡ, ΡΡΠΎ ΡΠΎΠΊΡΡ ΡΠ½ΠΎΠ²Π° Π΅Π³ΠΎ. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅_1 Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ³ΡΠ°ΡΡ ΠΌΡΠ·ΡΠΊΡ, ΠΎΠ½ΠΎ ΠΎΡΠ΄Π°Π΅Ρ ΡΠΎΠΊΡΡ. Π’.Π΅. ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠΎΠΊΡΡ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, Π½ΠΎ ΠΈ ΡΠ²Π½ΠΎ ΠΎΡΠ΄Π°Π²Π°ΡΡ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ Π½ΡΠΆΠ΅Π½. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΌΡ ΠΈΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄Π°Π»ΡΡΠ΅.
Π’ΡΡ Π΅ΡΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠΎΠΊΡΡ ΠΏΠΎΡΠ΅ΡΡΠ½/Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠΎΡΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ. Π ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΌ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΡΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ: ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡ, ΡΠ±Π°Π²ΠΈΡ Π·Π²ΡΠΊ ΠΈΠ»ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π» Π΄Π²Π° ΠΏΠ»Π΅Π΅ΡΠ° Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΠΏΠ»Π°Π½ΡΠ΅ΡΠ΅. ΠΠ° ΠΎΠ΄Π½ΠΎΠΌ Π²ΠΊΠ»ΡΡΠΈΠ» ΠΌΡΠ·ΡΠΊΡ ΠΈ ΡΠ²Π΅ΡΠ½ΡΠ» Π΅Π³ΠΎ, ΠΌΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π»Π° ΠΈΠ³ΡΠ°ΡΡ Π² ΡΠΎΠ½Π΅. Π Π΄ΡΡΠ³ΠΎΠΌ ΠΏΠ»Π΅Π΅ΡΠ΅ Ρ Π·Π°ΠΏΡΡΡΠΈΠ» ΠΏΡΠΎΡΠΌΠΎΡΡ ΡΠΈΠ»ΡΠΌΠ°. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Ρ ΡΠ»ΡΡΠ°Π» ΠΈ ΡΠΈΠ»ΡΠΌ ΠΈ ΠΌΡΠ·ΡΠΊΡ. ΠΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠ³ΠΎ.
ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ. ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Π³ΡΠΎΠΌΠΊΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ. ΠΠ³ΠΎ ΠΏΡΠΎΡΡΡ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΠΎΡΠΈΡΠ΅, Π° Π΅ΡΠ΅ Π»ΡΡΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌ Π·Π°ΡΠΊΠ½ΡΡΡΡΡ, Ρ.ΠΊ. ΠΎΠ½ ΠΌΠ΅ΡΠ°Π΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π΄ΠΎΡΡΠ°Π», ΠΈ Π²ΡΠ΅ Ρ ΠΎΡΡΡ ΠΏΠΎΡΠ»ΡΡΠ°ΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠΠΎΡ ΡΡΠΎ ΠΈ Π΅ΡΡΡ ΠΏΠΎΡΠ΅ΡΡ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ° ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ. ΠΠΎ Π²Π΅Π΄Ρ ΡΡΠΎ Π²ΠΎΠ²ΡΠ΅ Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠΎΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΡΡΡ ΠΆΠ΅ Π·Π°ΠΌΠΎΠ»ΡΠΈΡ. ΠΠΌΡ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΡΡΠΏΠΈΠ»ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, ΡΡΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ Ρ ΠΎΡΠ΅Ρ Π³ΠΎΠ²ΠΎΡΠΈΡΡ. Π ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠΎΡΡΡΠΏΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΡΡΠΈΡΠ°Π΅Ρ Π½ΡΠΆΠ½ΡΠΌ: Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ Π³ΡΠΎΠΌΠΊΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, Π»ΠΈΠ±ΠΎ Π±ΡΠ΄Π΅Ρ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΠΎΡΠΈΡΠ΅, Π»ΠΈΠ±ΠΎ Π·Π°ΠΌΠΎΠ»ΡΠΈΡ. ΠΡΠΎ ΠΎΡΡΠ°Π΅ΡΡΡ Π½Π° Π΅Π³ΠΎ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π°Π³Π»ΡΠΉ, ΡΠΈΠ»ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ Π±ΡΡΡΡΠΎ Π±Π΅Π³Π°Π΅Ρ )
ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΠΌΡΠ·ΡΠΊΠΎΠΉ ΠΈ Π·Π²ΡΠΊΠΎΠΌ. ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΠΎΠ΄Π½Ρ ΠΊΠ½ΠΎΠΏΠΊΡ Π±ΡΠ΄Π΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΌΡΠ·ΡΠΊΠΈ, Π° ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° Π΄ΡΡΠ³ΡΡ β Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ Π·Π²ΡΠΊ. Π ΠΏΡΠΈΠ²ΡΠΆΠ΅ΠΌ ΠΊ ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΠ΅ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ.
Project name: P1281_AudioFocus
Build Target: Android 2.3.3
Application name: AudioFocus
Package name: ru.startandroid.develop.p1281audiofocus
Create Activity: MainActivity
ΠΠΎΠ±Π°Π²ΠΈΠΌ ΡΡΡΠΎΠΊΠΈ Π² strings.xml:
ΠΠ½ΠΎΠΏΠΊΠ° Music Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΌΡΠ·ΡΠΊΡ, Π° ΡΡΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ β Π·Π²ΡΠΊ. ΠΡ ΡΡΠΈ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΅ΡΡΡ ΡΡΠΈ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠ° ΡΠΎΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ Π²ΡΠ΅ ΡΡΠΈ.
Π ΠΏΠ°ΠΏΠΊΡ mnt/sdcard/Music/ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΡΡ ΡΠ°ΠΉΠ» Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ music.mp3. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡΡ Π·Π΄Π΅ΡΡ. Π ΠΏΠ°ΠΏΠΊΡ res/raw ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» explosion.mp3, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡΡΡΠ΄Π°.
Π onCreate ΠΌΡ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ AudioManager. ΠΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ΡΠ΅Π· Π½Π΅Π³ΠΎ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ ΡΠΎΠΊΡΡ.
onClickMusic ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Music. ΠΠ΄Π΅ΡΡ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ MediaPlayer ΠΈ Π΄Π°Π΅ΠΌ Π΅ΠΌΡ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ Ρ ΠΌΡΠ·ΡΠΊΠΎΠΉ. ΠΠ΅ΡΠΎΠ΄ΠΎΠΌ setOnCompletionListener ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Activity, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ. ΠΠ°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠΎΠΊΡΡΠΎΠΌ. afListenerMusic β ΡΡΠΎ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ (ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ OnAudioFocusChangeListener), ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΠΏΠΎΡΠ΅ΡΠ΅/Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠΊΡΡΠ°. ΠΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ° AFListener, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΡΡ Π΄Π°Π»ΡΡΠ΅.
Π€ΠΎΠΊΡΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° requestAudioFocus. ΠΠ° Π²Ρ
ΠΎΠ΄ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ:
— ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΡΠΎΠΊΡΡΠ΅
— ΡΠΈΠΏ ΠΏΠΎΡΠΎΠΊΠ°
— ΡΠΈΠΏ ΡΠΎΠΊΡΡΠ°
Π’ΠΈΠΏ ΡΠΎΠΊΡΡΠ° Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΠ»Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΡΠ²ΠΎΠΉ Π·Π²ΡΠΊ ΠΈ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΡΡΠΎΠΌ Π·Π°ΠΌΠΎΠ»ΡΠ°Π»ΠΎ. ΠΡΠ΅Π³ΠΎ Π΅ΡΡΡ ΡΡΠΈ ΡΠΈΠΏΠ° ΡΠΎΠΊΡΡΠ°:
AUDIOFOCUS_GAIN β ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π΅Ρ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΎΠ½ΠΎ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π΄ΠΎΠ»Π³ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΡΠ²ΠΎΠΉ Π·Π²ΡΠΊ, ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ
AUDIOFOCUS_GAIN_TRANSIENT β Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ, ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ Π½Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ
AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK β Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌ, Π½ΠΎ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΡΡΠΎ Π½Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ±Π°Π²ΠΈΡΡ Π·Π²ΡΠΊ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΈΠ³ΡΠ°ΡΡ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠΎΠΊΡΡ, ΡΡΠ°ΡΡΡΠ΅ΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠ΅ΡΠΎΠ΄ onClickSound ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° Π»ΡΠ±ΡΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΎΠΊ Sound. ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠ°Ρ ΠΈΠ· ΡΡΠ΅Ρ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π±ΡΠ»Π° Π½Π°ΠΆΠ°ΡΠ°. Π’Π΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΌΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ durationHint ΠΏΠΈΡΠ΅ΠΌ ΡΠΈΠΏ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅ΠΌ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ. ΠΠ°Π»Π΅Π΅ ΡΠΎΠ·Π΄Π°Π΅ΠΌ MediaPlayer, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π½Π°Ρ Π·Π²ΡΠΊ Π²Π·ΡΡΠ²Π° ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ raw. ΠΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΠΌ Π΅ΠΌΡ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΡΠΎΠΊΡΡ Ρ ΡΠΈΠΏΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈ Π²ΡΡΠ΅. Π‘ΡΠ°ΡΡΡΠ΅ΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠ΅ΡΠΎΠ΄ onCompletion, ΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΏΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ. ΠΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ MediaPlayer Π·Π°ΠΊΠΎΠ½ΡΠΈΠ» ΠΈΠ³ΡΠ°ΡΡ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ abandonAudioFocus ΡΠΎΠΎΠ±ΡΠ°Π΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΡΠ΅ΠΌ Π½Π° Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡ. ΠΠ° Π²Ρ ΠΎΠ΄ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΠΌ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π²Π°Π»ΠΈ ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ ΡΠΎΠΊΡΡΠ°.
Π onDestroy ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅ΠΌ ΡΠ΅ΡΡΡΡΡ ΠΈ ΠΎΡΠΏΡΡΠΊΠ°Π΅ΠΌ ΡΠΎΠΊΡΡ.
ΠΠ»Π°ΡΡ AFListener ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ OnAudioFocusChangeListener ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎ ΠΏΠΎΡΠ΅ΡΠ΅/Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠΊΡΡΠ°. ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΌΡ Π΄Π°Π΅ΠΌ Π΅ΠΌΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ MediaPlayer (ΠΏΠΎΠ·ΠΆΠ΅ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ Π·Π°ΡΠ΅ΠΌ) ΠΈ ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π΄Π»Ρ Π»ΠΎΠ³ΠΎΠ².
ΠΠΎΠΊΠ° ΡΡΠΎ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π±ΡΠ΄Π΅ΠΌ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π² Π»ΠΎΠ³ Π²ΡΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡ Π΅ΠΌΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π΄Π²ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ Π°ΡΠ΄ΠΈΠΎ-ΡΠΎΠΊΡΡΠΎΠΌ.
ΠΡΠ΅ ΡΠΎΡ ΡΠ°Π½ΠΈΠΌ ΠΈ Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΌΠ΅ΠΌ Music, Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΡΠ·ΡΠΊΠΈ Π½Π°ΡΠ°Π»ΠΎΡΡ. Π Π»ΠΎΠ³Π°Ρ Π²ΠΈΠ΄ΠΈΠΌ.
Π’.Π΅. ΠΌΡΠ·ΡΠΊΠ° Π·Π°ΠΏΡΠΎΡΠΈΠ»Π° ΡΠΎΠΊΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»Π° Π΅Π³ΠΎ (ΡΡΠ°ΡΡΡ = 1).
ΠΠΌΠ΅ΠΌ Sound G, ΡΡΠΎΠ±Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Π·Π²ΡΠΊ Π²Π·ΡΡΠ²Π° ΠΈ Π·Π°ΠΏΡΠΎΡΠΈΡΡ ΡΠΎΠΊΡΡ AUDIOFOCUS_GAIN.
Sound request focus, result: 1
Music onAudioFocusChange: AUDIOFOCUS_LOSS
Π€ΠΎΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ΅Π½ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ Π²Π·ΡΡΠ²ΠΎΠΌ. Π ΠΌΡΠ·ΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΠ»Π° ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠΎΠΊΡΡ ΠΎΠ½Π° ΠΏΠΎΡΠ΅ΡΡΠ»Π° (AUDIOFOCUS_LOSS).
Π‘Π»ΡΡΠΈΠΌ Π·Π²ΡΠΊ Π²Π·ΡΡΠ²Π°. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π²ΡΠΊ Π²Π·ΡΡΠ²Π° Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΡΡ:
Sound: abandon focus
Music onAudioFocusChange: AUDIOFOCUS_GAIN
ΠΡΠ»ΠΈ Π΄ΠΎΠΆΠ΄Π°ΡΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΊΠΎΠ½ΡΠΈΡΡΡ ΠΌΡΠ·ΡΠΊΠ° ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ°ΠΊΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
Music: abandon focus
ΠΡΠ·ΡΠΊΠ° ΠΎΡΠ΄Π°Π»Π° ΡΠΎΠΊΡΡ.
ΠΠ°ΠΊ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ, ΠΌΡΠ·ΡΠΊΠ° Π²ΡΠ΅ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ³ΡΠ°Π»Π° ΠΈ Π½ΠΈΠΊΡΠ΄Π° Π½Π΅ Π΄Π΅Π»Π°ΡΡ. Π’ΠΎ, ΡΡΠΎ ΠΎΠ½Π° ΡΠ΅ΡΡΠ»Π° ΡΠΎΠΊΡΡ β Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΠΎ ΠΎΠ½Π° ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ. ΠΠΎΠ²ΡΠΎΡΡΡΡ, ΡΠΎΠΊΡΡ β ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅. Π ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ΅Π°Π³ΠΈΡΡΠ΅Ρ Π½Π° ΡΡΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ β ΡΠ΅ΡΠ°ΡΡ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ.
Π’.Π΅. ΠΌΡ ΡΠ²ΠΈΠ΄Π΅Π»ΠΈ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΡΠΎΠΊΡΡΠ°, Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΈΡ ΡΡΠΎΡ ΡΠΈΠΏ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΡ. ΠΡΡΠ°ΡΠΈ ΠΎ ΠΌΠ΅ΡΠ°Ρ . ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΊΡΠΎΠΌΠ΅ Π»ΠΎΠ³ΠΎΠ² ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΠΈ ΡΡΠΈ ΠΌΠ΅ΡΡ.
ΠΠ΅ΡΠ΅ΠΏΠΈΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ onAudioFocusChange ΠΊΠ»Π°ΡΡΠ° AFListener:
ΠΡΠΈ ΠΏΠΎΡΠ΅ΡΡΡ ΡΠΎΠΊΡΡΠ° AUDIOFOCUS_LOSS ΠΈ AUDIOFOCUS_LOSS_TRANSIENT ΡΡΠ°Π²ΠΈΠΌ ΠΏΠ°ΡΠ·Ρ. Π ΠΏΡΠΈ AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK β ΠΏΡΠΎΡΡΠΎ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΠΌ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ. ΠΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΆΠ΅ ΡΠΎΠΊΡΡΠ° (AUDIOFOCUS_GAIN) Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, ΠΈ ΡΡΠ°Π²ΠΈΠΌ Π³ΡΠΎΠΌΠΊΠΎΡΡΡ Π½Π° ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ.
Π― Π²ΡΠ±ΡΠ°Π» ΡΠ°ΠΌΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΡΡΠ»ΠΎΠΆΠ½ΡΡΡ ΡΡΠΎΠΊ. ΠΠΎ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΡΡΡΠΈΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΏΠΎΡΠ΅ΡΠ΅ ΡΠΎΠΊΡΡΠ° Π½Π°Π΄ΠΎΠ»Π³ΠΎ (AUDIOFOCUS_LOSS) ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡΡ ΡΠ΅ΡΡΡΡΡ, ΠΈ ΡΠ½ΠΎΠ²Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ MediaPlayer ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΎΠΊΡΡΠ°. ΠΠΈΠ±ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠ΄Π°ΡΡ ΡΠΎΠΊΡΡ (abandon), ΠΈ ΡΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°Π΄ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ²Π½ΠΎ Π²Π΅ΡΠ½ΡΡΡΡΡ Π² Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΡΠ΅ ΡΠΎΠΊΡΡ, ΠΌΠ΅ΡΠΎΠ΄ requestFocus Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²Π°ΠΌ ΠΎΡΠ²Π΅Ρ, ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ Π·Π°Ρ Π²Π°ΡΠΈΡΡ ΡΠΎΠΊΡΡ ΠΈΠ»ΠΈ Π½Π΅Ρ. Π₯Π΅Π»ΠΏ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΈ ΡΡΠ°ΡΡΠΎΠ²Π°ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ (AUDIOFOCUS_REQUEST_GRANTED). Π―, ΠΏΡΠ°Π²Π΄Π°, Π½Π΅ Π·Π½Π°Ρ ΠΊΠ°ΠΊ ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡΠ»ΠΈ Ρ ΠΊΠΎΠ³ΠΎ Π΅ΡΡΡ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΡΠΎΡ ΡΡΠ΅Ρ β ΠΏΠΈΡΠΈΡΠ΅ Π½Π° ΡΠΎΡΡΠΌΠ΅.
ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠΎΠΊΠ΅:
— ΠΏΠΈΡΠ΅ΠΌ Π·Π²ΡΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ MediaRecorder
ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊ Π½Π°ΠΌ Π² Telegram:
— Π² ΠΊΠ°Π½Π°Π»Π΅ StartAndroid ΠΏΡΠ±Π»ΠΈΠΊΡΡΡΡΡ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π½ΠΎΠ²ΡΠ΅ ΡΡΠ°ΡΡΠΈ Ρ ΡΠ°ΠΉΡΠ° startandroid.ru ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ Ρ Ρ Π°Π±ΡΠ°, medium.com ΠΈ Ρ.ΠΏ.
— Π² ΡΠ°ΡΠ°Ρ ΡΠ΅ΡΠ°Π΅ΠΌ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠ΅ΠΌΠ°ΠΌ: Android, Kotlin, RxJava, Dagger, Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
— Π½Ρ ΠΈ Π΅ΡΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Ρ ΠΎΡΠ΅ΡΡΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ Ρ ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌΠΈ ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅, ΡΠΎ Π΅ΡΡΡ ΡΠ°Ρ Π€Π»ΡΠ΄ΠΈΠ»ΡΠ½Ρ
— Π½ΠΎΠ²ΡΠΉ ΡΠ°Ρ Performance Π΄Π»Ρ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄Π»Ρ Π²Π°ΡΠΈΡ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΠΉ ΠΏΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΊΡΡΡΠ° ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅
ΠΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ β ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠΎΠΌ ΠΊ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅
ΠΡΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Respecting Audio Focus Kristan Uccello, Google Developer Relations
Π‘ΡΠΈΡΠ°Π΅ΡΡΡ Π³ΡΡΠ±ΡΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΈΠ²Π°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠΊΠ»Π°Π΄Π°, ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π΅ΡΠ²Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊ Π΄ΠΎΠΊΠ»Π°Π΄ΡΠΈΠΊΡ ΠΈ ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°Π΅Ρ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡ. ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠ°Π±ΠΎΡΡ Ρ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠΎΠΌ, Π·Π½Π°ΡΠΈΡ, ΠΎΠ½ΠΎ Π½Π΅ ΡΠ²Π°ΠΆΠ°Π΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠ»ΠΈ ΠΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎΠ± Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ΅, ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Android developer training material.
ΠΠΎΠ³Π΄Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π°ΡΠ΄ΠΈΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ. Π§ΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ ΠΏΠ»Π΅Π΅ΡΡ ΠΈΠ³ΡΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΠ½Π΄ΡΠΎΠΈΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ½ΡΡΠΈΠ΅ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π·Π²ΡΠΊΠΎΠ²: Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π°ΡΠ΄ΠΈΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ²Π΅ΡΠΎΠ² ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΈ Π½Π°ΠΈΠ»ΡΡΡΠΈΠΌ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°.
ΠΠ°ΠΏΡΠΎΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°
ΠΠ΅ Π½Π°Π΄ΠΎ Π±ΡΡΡ ΠΆΠ°Π΄Π½ΡΠΌ ΠΈ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ ΠΏΡΡΠΌΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠ°ΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ; Π»ΡΡΡΠ΅ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ, ΠΏΠΎΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°ΡΠ½Π΅Ρ ΡΡΠΎ-ΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ Π°ΡΠ΄ΠΈΠΎΠΏΠΎΡΠΎΠΊΠΎΠΌ. ΠΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΠ²ΠΈΡ AudioManager, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ AUDIOFOCUS_GAIN* Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠΎΠΊΡΡΠ°.
Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ, ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ (AUDIOFOCUS_GAIN_TRANSIENT) ΡΠΎΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π·Π²ΡΠΊΠΎΠ² Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ 45 ΡΠ΅ΠΊΡΠ½Π΄.
ΠΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ βΠΊΡΡΠΊΠ°Π½ΠΈΡβ (AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK) Π΄Π»Ρ ΡΠΈΡΡΠ°ΡΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°ΡΠ΄ΠΈΠΎΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΡΠ°Π·Ρ βΠΆΠ³ΠΈ Π΅ΡΠ΅β Π² ΡΠΈΡΠ½Π΅Ρ-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΎΠΆΠΈΠ΄Π°Ρ, ΡΡΠΎ ΡΠΎΠ½ΠΎΠ²Π°Ρ ΠΌΡΠ·ΡΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΡΡΠ²Π°ΡΡΡΡ). ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡΠ΅Π΅ ΡΠΎΠΊΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ βΠΊΡΡΠΊΠ°Π½ΠΈΡβ, Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°ΡΠ΄ΠΈΠΎΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Π΄ΠΎΠ»ΡΡΠ΅ 15 ΡΠ΅ΠΊΡΠ½Π΄ ΠΏΠΎΠ΄ΡΡΠ΄.
ΠΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°
ΠΠ»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ OnAudioFocusChangeListener. Π ΡΡΠΎΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠΈΡ AUDIOFOCUS_GAIN* ΠΈ AUDIOFOCUS_LOSS*. Π‘ΡΠΎΠΈΡ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_GAIN ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅.
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ° AUDIOFOCUS_GAIN ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠ΄Π΅ Π² Π΄Π²ΡΡ
ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠΎΠ»ΡΡ
. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ 1. ΠΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° OnAudioFocusChangeListener, ΡΠΎ Π΅ΡΡΡ ΠΏΡΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ (ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ) Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΠ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_GAIN.
AUDIOFOCUS_GAIN ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ OnAudioFocusChangeListener ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠΎΠ±ΡΡΠΈΡ. ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ ΡΠ°Π½Π΅Π΅, ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_GAIN Π½Π΅ Π²ΠΎΠ·Π±ΡΠΆΠ΄Π°Π΅ΡΡΡ ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°. ΠΠ°ΠΏΡΠΎΡΠΈΠ², ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ AUDIOFOCUS_LOSS*. AUDIOFOCUS_GAIN β Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΎΠ±Π΅ΠΈΡ
ΡΠΈΡΡΠ°ΡΠΈΡΡ
.
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ΅ΡΡΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_LOSS, ΡΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ ΠΎΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΡΡΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π°ΡΠ΄ΠΈΠΎΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, ΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ»ΡΡΠ°Π΅Ρ ΠΌΡΠ·ΡΠΊΡ ΡΠ΅ΡΠ΅Π· Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΈΠ³ΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°Π±ΠΈΡΠ°Π΅Ρ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ Ρ Π°ΡΠ΄ΠΈΠΎΠΏΠ»Π΅Π΅ΡΠ°. ΠΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·Π°ΡΡ, ΡΠ΅ΡΠ΅Π· ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π·Π°ΠΊΡΠΎΠ΅Ρ ΠΈΠ³ΡΡ. Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΎΠ½ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅Ρ Π½Π° Π³Π»Π°Π²Π½ΡΠΉ ΡΠΊΡΠ°Π½ (ΠΎΡΡΠ°Π²ΠΈΠ² ΠΈΠ³ΡΡ Π² ΡΠΎΠ½Π΅) ΠΈ Π·Π°ΠΏΡΡΡΠΈΡ Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ»ΠΈ ΠΎΠ½ Π²Π΅ΡΠ½Π΅ΡΡΡ Π² Π°ΡΠ΄ΠΈΠΎΠΏΠ»Π΅Π΅Ρ, Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΠ² Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ, ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° Π² onResume.
ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉ, Π΄ΠΎΡΡΠΎΠΉΠ½ΡΠΉ ΠΎΠ±ΡΡΠΆΠ΄Π΅Π½ΠΈΡ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ° Π½Π°Π²ΡΠ΅Π³Π΄Π° (ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅) ΠΈΠ»ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_LOSS_TRANSIENT, ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°ΡΠ΄ΠΈΠΎ Π΄ΠΎ ΡΠ΅Ρ
ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_GAIN. ΠΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_LOSS_TRANSIENT ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΠΎΡΠ΅ΡΡ ΡΠΎΠΊΡΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅ ΡΠΎΠΊΡΡΠ° ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ. (ΡΠΌ. ΠΏΡΠΈΠΌΠ΅Ρ 2).
ΠΠ½ΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠ΅Ρ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ (Ρ.Π΅. ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ AUDIOFOCUS_LOSS), Π° ΠΏΡΠ΅ΡΠ²Π°Π²ΡΠ΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ, ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠ΅ΡΡΠ΅Ρ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ. Π ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΠΌΠ΅Π»ΠΎ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅ AUDIOFOCUS_GAIN.
Π ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠΎΠ±ΡΡΠΈΠΈ AUDIOFOCUS_GAIN ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎ Π»ΠΈ ΠΎΠ½ΠΎ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π½ΠΈΠ΅, Π»ΠΈΠ±ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΠΊΡΡΠ°.
ΠΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π°ΡΠ΄ΠΈΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΡ (Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 45 ΡΠ΅ΠΊΡΠ½Π΄), ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ AUDIOFOCUS_GAIN_TRANSIENT ΠΈ ΠΎΡΠΏΡΡΠΊΠ°ΡΡ Π΅Π³ΠΎ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π·Π²ΡΠΊΠ°. ΠΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΡΠ΅ΠΊ: ΡΠΎΠΊΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Π»Π°Π΄Π΅Π»ΠΎ ΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ.
ΠΠΎΠ³Π΄Π° Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½, ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°ΡΡ MediaPlayer ΠΈΠ»ΠΈ MediaRecorder ΠΈ Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΡΡΡΡ. Π’Π°ΠΊΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ AUDIOFOCUS_LOSS, Ρ
ΠΎΡΠΎΡΠ΅ΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Ρ
Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΠ΅ΡΡΡΡΠΎΠ². Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π°ΡΠ΄ΠΈΠΎΡΠΎΠΊΡΡΠ°, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°Π·Π½ΡΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌ ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΠΊΡΡΠ°. ΠΠ΅ΠΏΠ»ΠΎΡ
ΠΎ Π±Ρ ΡΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΠΊΡΡΠ° Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ΅ OnAudioFocusChangeListener.