Receive boot broadcast ΡΡΠΎ ΡΡΠΎ
ΠΠ²ΡΠΎΠ·Π°ΠΏΡΡΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅
Π’Π΅ΠΌΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ACTION_BOOT_COMPLETED ΠΎΡΡΠ°Π΅ΡΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΈ ΠΏΠΎ ΡΠ΅ΠΉ Π΄Π΅Π½Ρ. ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΎΠ²ΠΈΡΠΊΠΈ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ: ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
ΠΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°:
Π ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅:
Π ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅ Π² Π±Π»ΠΎΠΊΠ΅ application Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π½Π° ΠΏΡΠΈΡΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ACTION_BOOT_COMPLETED:
Π ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ Β«enabledΒ», Β«exportedΒ» ΠΈ Ρ.Π΄. ΠΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠΎΠ΄ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°:
ΠΡΠ»ΠΈ Π²Π°Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ACTION_BOOT_COMPLETED, ΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Β«ifΒ» Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π°. ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅ΡΠΈΠ²Π΅Ρ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΈΠ»ΡΡΡΡΠΉΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡ ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° onReceive().
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ. Android ΡΡΡΡΠΎΠ΅Π½Π° ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ACTION_BOOT_COMPLETED ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΠΏΠ΅ΡΠ΅Π΄ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ Π½Π° Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ, Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π§ΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π²Π½Π΅ΡΠ½ΡΡ ΠΏΠ°ΠΌΡΡΡ, Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅ ΠΠ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π΄Π»Ρ Π°ΡΡΠΈΠ±ΡΡΠ° «@android:installLocation» Π·Π½Π°ΡΠ΅Π½ΠΈΡ Β«autoΒ» ΠΈΠ»ΠΈ Β«preferExternalΒ». ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Ρ.Π΅. Π΅ΡΠ»ΠΈ ΡΡΠΎΡ Π°ΡΡΠΈΠ±ΡΡ Π½Π΅ ΡΠΊΠ°Π·Π°Π½, Android ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΠΌΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π»ΡΡΡΠ΅ ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«internalOnlyΒ», ΡΡΠΎΠ±Ρ Ρ Π²Π°Ρ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ ΠΈΡΠΊΡΡΠ΅Π½ΠΈΠ΅ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΡ ΠΈΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ (force stop) ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎΠ±Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Β«Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠ»Π°Β» ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ Π΅ΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ACTION_BOOT_COMPLETED. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² Π²Π΅ΡΡΠΈΠΈ Android 3.1 Π² ΡΠ΅Π»ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. Π ΡΠ΅ΠΌ ΡΡΡΡ? ΠΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Β«stoppedΒ» (Π½Π΅ ΠΏΡΡΠ°ΡΡ Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΈ, Ρ.ΠΊ. ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠΈΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ). Π ΡΡΠΎ ΠΆΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«ΡΡ ΠΎΠ΄ΠΈΡΒ», ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π΅Π³ΠΎ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ. ΠΠΎΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΎΠ½ΠΎ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π½ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ΅Π· ACTION_BOOT_COMPLETED), ΠΈΡΠΊΠ»ΡΡΠ°Ρ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π·Π°ΠΏΡΡΠΊ ΡΠ°ΠΌΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ°ΠΊΠΎΠΌΡ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΡ Π½Π΅ΠΌΠ°Π»Π°Ρ ΡΠ°ΡΡΡ Π²ΠΈΡΡΡΠΎΠ² ΠΈ ΡΡΠΎΡΠ½ΡΠ΅Π²Β» ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ, Ρ.ΠΊ. ΡΠΆΠ΅ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΎΠΌ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅ΠΆΠΈΠΌΠ° Fast boot Π² HTC-ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ : ΠΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ HTC-ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π² ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅, Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Fast boot (ΡΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠΎΡΠΌ Π³ΠΈΠ±Π΅ΡΠ½Π°ΡΠΈΠΈ), ΡΠΎΡ ΡΠ°Π½ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΠ‘ Π½Π° Π΄ΠΈΡΠΊ. ΠΠΎΡΡΠΎΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ACTION_BOOT_COMPLETED Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, Ρ.ΠΊ. Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. ΠΠΌΠ΅ΡΡΠΎ ACTION_BOOT_COMPLETED ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ:
Π Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π² ΡΠ΅Π³Π΅ Β«receiverΒ» ΠΊΡΠΎΠΌΠ΅ ACTION_BOOT_COMPLETED ΡΠ°ΠΊΠΆΠ΅ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅:
ΠΡΠ°ΠΊΡΠΈΠΊΠ°: ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ
Π Π°Π·Π±Π΅ΡΡΠΌ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ Π½ΠΎΠ²ΠΈΡΠΊΠΈ ΠΏΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π² ΠΊΠΎΠ΄Π΅.
ΠΡΠ»Π°Π΄ΠΊΠ° ΡΠ΅ΡΠΈΠ²Π΅ΡΠ° Π² ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ ΠΈ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
Π ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅:
ΠΠ°Π»Π΅Π΅, ΡΡΠΎΠ±Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ACTION_BOOT_COMPLETED Π²ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ, Π½Π°Π±Π΅ΡΠΈΡΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅:
ΠΠ»ΠΈ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ACTION_BOOT_COMPLETED ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°Π±Π΅ΡΠΈΡΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅:
Π ΡΠΌΡΠ»ΡΡΠΎΡΠ΅: ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²Π°ΡΠ΅ ΠΠ, Π·Π°ΠΏΡΡΡΠΈΠ² Π΅Π³ΠΎ ΠΈΠ· ΡΡΡΠ΄ΠΈΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΡΡΠ΄ΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Ρ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡ Π΅Π³ΠΎ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ ΡΠΌΡΠ»ΡΡΠΎΡ (ΡΡΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅). Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ACTION_BOOT_COMPLETED, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠΌΡΠ»ΡΡΠΎΡ ΠΈΠ· AVD-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ°, Π° Π½Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Run appΒ» Π² ΡΡΡΠ΄ΠΈΠΈ.
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΌΡΠ»ΡΡΠΎΡΠ° Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Android Monitor ΡΠΊΠ°ΠΆΠΈΡΠ΅ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π»ΠΎΠ³ΠΈ logcat.
ΠΡΠΎΠ³ΠΈ
Π§ΡΠΎΠ±Ρ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΡΠΊΠ°Π»ΠΎΡΡ ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ Π½Π° Π²ΡΠ΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ , ΠΌΠ°Π½ΠΈΡΠ΅ΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
Broadcast (Π¨ΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ)
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ°ΡΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
Π¨ΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΎΡΠΊΡΡΡΡΠΌ; ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ ΡΠΎΠ±ΡΡΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π²Ρ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ΅Π°Π³ΠΈΡΡΡΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΡ Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π²Π°ΡΠ΅ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΡΠ²ΠΎΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ»ΡΡΡΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ (ΠΈΠ»ΠΈ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ) ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠΎΠ±ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΡ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, Π° Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΎΠ±Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Π°ΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΈΡΠΌΠ½ΠΈΠΊ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈ ΡΠ΅Π°ΠΊΡΠΈΠΈ Π½Π° Π½ΠΈΡ . ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΌΠΎΠ³ΡΡ:
Π¨ΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π΅ Π³ΡΡΠΏΠΏΡ:
ΠΠ»Π°ΡΡ BroadcastReceiver ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠΌ Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΡΠ»Π°Π΅ΠΌΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠ·ΠΎΠ²Π° ΠΌΠ΅ΡΠΎΠ΄Π° sendBroadcast().
ΠΠ°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° BroadcastReceiver ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅ ΠΈΠ»ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅.
ΠΠ»Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Π² ΡΠ°ΠΉΠ»Π΅ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π² ΡΠ΅ΠΊΡΠΈΠΈ application ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΠΊΡΠΈΡ receiver ΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠ»Π°ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°. ΠΡΡΠΈΠ±ΡΡ android:exported=»true» ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΡΡΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²Π½Π΅ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ½ΡΡΡΠΈ ΡΠ΅ΠΊΡΠΈΠΈ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΈΠ»ΡΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ.
ΠΡΠ»ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π±ΡΠ»Π° ΡΠ΄Π΅Π»Π°Π½Π° ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π½ΠΈΡΠ΅ΡΡ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠ±ΡΠ·Π°Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΡΠΎΠ±Ρ Π²Π°Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ ΡΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π» Π½Π° ΡΡΠ°Π½ΡΠ»ΡΡΠΈΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΎ. Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠ°ΠΌΠ° ΡΠΊΠ°Π½ΠΈΡΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π²ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π΄Π΅Π»Π°Π΅Ρ Π·Π° Π½Π°Ρ Π²ΡΡ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΎ Ρ ΠΎΡΠΎΡΠ΅Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΡΠ΅ΡΡΡΡΡ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΏΠΎΡΠΎΠ±Π½ΡΠ΅ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΡ Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ.
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° Context.registerReceiver().
ΠΠ΅ΡΠ΅Π΄ ΡΡΠΈΠΌ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΊΠ»Π°ΡΡ, ΡΠ°ΡΡΠΈΡΡΡΡΠΈΠΉ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ BroadcastReceiver ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° onReceive() ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΡΠΎΠ±ΡΡΠΈΠΉ.
ΠΠ΅ΡΠΎΠ΄ onReceive() Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠ»ΡΡΡΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌΠΈ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π±ΡΠ΄ΡΡ Π·Π°ΠΏΡΡΠ΅Π½Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠ΅ΡΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π·Π°Π²Π΅ΡΡΡΠ½ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΡΠΈ ΡΠ΅ΠΊΡΠ½Π΄, ΠΈΠ½Π°ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΎ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ Π·Π°ΠΊΡΡΡΠΈΠΈ.
ΠΠΎΠ³Π΄Π° ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ±ΡΠ²Π°Π΅Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Android Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ onReceive() ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π² Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ Intent, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΡΠΈΡΠΌΠ½ΠΈΠΊ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°. ΠΡΠΎΡΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ BroadcastReceiver, Ρ. Π΅. Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉΡΡ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠ΄ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° onReceive(), ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ½, ΠΊΡΠΎΠΌΠ΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ° ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅.
ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄Π° onReceive(), ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ, ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ° BroadcastReceiver Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°. ΠΡΠΎΡΠ΅ΡΡ Ρ Π°ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΌ Π·Π°ΡΠΈΡΡΠ½ ΠΎΡ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π² Π»ΡΠ±ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠ°ΠΌΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅Ρ, Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° Π΄ΡΡΠ³ΠΈΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌ.
ΠΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΡΠ²Π΅Ρ Π½Π° ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΡΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ onReceive() ΠΏΠΎΡΠΎΠΆΠ΄Π°Π΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΠΎ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΈ ΠΏΠΎΡΠΎΠΆΠ΄ΡΠ½Π½ΡΠΉ ΠΏΠΎΡΠΎΠΊ, ΡΠΈΡΡΠ΅ΠΌΠ° Android ΡΡΠΈΡΠ°Π΅Ρ Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠΌ (Π΅ΡΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ Π°ΠΊΡΠΈΠ²Π½Ρ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅), ΠΈ ΡΡΠΈΡΠ°Π΅Ρ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠΌ Π½Π° ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈΠ»ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ ΡΠΎ ΡΠ»ΡΠΆΠ±ΠΎΠΉ Π²Π½ΡΡΡΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° BroadcastReceiver. ΠΠ»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° NotificationManager. ΠΠΎ Π²ΡΠΎΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° Context.startService(), ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠ»Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ»ΡΠΆΠ±Ρ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΅ΡΠ»ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ onReceive() ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ»ΡΠΆΠ±Ρ Π²ΠΌΠ΅ΡΡΠ΅ Ρ BroadcastReceiver ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΡΠ»ΡΠΆΠ±Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅, ΡΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π°ΠΊΡΠΈΠ²Π½ΡΠΌ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Π°ΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π½Π΅ ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π½ΠΈΡΠ΅ΡΡ, Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ. ΠΡΠΈΡΠΌΠ½ΠΈΠΊ, Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΊΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° ΠΏΠΎΡΡΡΠΏΠ°ΡΡΠΈΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ½ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ.
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π²Π½ΡΡΡΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ, Π·Π°ΠΏΡΡΠΊΠ° ΡΠ»ΡΠΆΠ± ΠΈΠ»ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· NotificationManager. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΌΠ΅Π½ΡΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°, Π΅ΡΠ»ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΈΠ»ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ.
Π ΠΊΠΎΠ΄Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ (ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ onResume()):
ΠΠ»Ρ ΠΎΡΠΌΠ΅Π½Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ unregisterReceiver() Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ Π΅ΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° (ΠΎΠ±ΡΡΠ½ΠΎ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ onPause()):
ΠΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° BroadcastReceiver Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π²ΠΈΠ΄Π΅ΡΡ ΠΈΠ»ΠΈ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ startActivity(). ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π»ΠΈ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΠ΅ΠΊΡ BroadcastReceiver, Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ. ΠΡΠΈ Π΄Π²Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ: Π·Π°ΠΏΡΡΠΊ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π· Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠ΅ΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΊΡΠ°Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Ρ ΠΊΠΎΡΠΎΡΡΠΌ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ½ΠΎΠ²ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΠΉ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΊΠΎΡΠΎΡΠ°Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΈΠΉ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ.
ΠΡΠΈΡΠΌΠ½ΠΈΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ
Android ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΡΡΠ΄ΠΊΠΈ Π±Π°ΡΠ°ΡΠ΅ΠΈ, ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π²ΠΎΠ½ΠΊΠΈ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°, ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π²Ρ ΠΎΠ΄ΡΡΠΈΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ SMS ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ΅Π»Π΅ΡΠΎΠ½Ρ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΊ Π²Π°ΡΠΈΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΡΡ .
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ Π² ΠΊΠ»Π°ΡΡΠ΅ Intent, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠ»Π΅Π΄ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°:
Π’ΠΈΠΏΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΉ
ΠΡΡΡ ΡΡΠΈ ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΉ
ΠΡΠ»ΠΈ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΈ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΈ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π²Π»ΠΈΡΡΡ Π½Π° ΡΡΠ°Π½ΡΠ»ΠΈΡΡΠ΅ΠΌΠΎΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ sendOrderedBroadcast():
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π²Π°ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΉΠ΄ΡΡ Π΄ΠΎ Π²ΡΠ΅Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠ², ΠΎΠ±Π»Π°Π΄Π°ΡΡΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌ Π΄ΠΎΡΡΡΠΏΠΎΠΌ (Π΅ΡΠ»ΠΈ ΠΎΠ½ Π±ΡΠ» ΡΠΊΠ°Π·Π°Π½), Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ°. ΠΡΠΈΠΎΡΠΈΡΠ΅Ρ Π·Π°Π΄Π°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°ΡΡΠΈΠ±ΡΡΠ° android:priority Π²Π½ΡΡΡΠΈ ΡΠ·Π»Π° ΡΠΈΠ»ΡΡΡΠ° Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠ² ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΠ΅Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΏΡΠΈΡΠΌΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π² Android 8.0 Oreo (API 26)
Π§Π°ΡΡΡ Π½Π΅ΡΠ²Π½ΡΡ (implicit) ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π½ΠΈΡΠ΅ΡΡ, Π·Π°ΠΏΡΠ΅ΡΠΈΠ»ΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ ΠΏΡΠ΅ΠΆΠ΄Π΅ Π±Π΅Π· ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°ΠΌΠ΅Π½Ρ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°Π΅Π² ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ JobScheduler.
ΠΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅Π³ΠΎ ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ android.net.conn.CONNECTIVITY_CHANGE, ACTION_POWER_CONNECTED ΠΈ Π΄Ρ.
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π² Android 9.0 Pie (API 28)
Π‘ΡΠ°Π»ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠΎΠΉ ΠΏΡΠΈ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΡ Wi-Fi ΠΈ Network_State_Changed_Action.
Broadcast (Π¨ΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ)
Π Android ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΏΠΎΠ½ΡΡΠΈΠ΅ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ. ΠΠ±Π° ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π½Π΅ ΡΠ²ΡΠ·Π°Π½Ρ ΠΈ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π½Π°ΡΡΠΈΠΌΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΡΠΎΠΊΠΎΠ² ΠΌΡ ΡΡΠΈΠ»ΠΈΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΄ΡΡΠ³ΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Intent. ΠΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π½Π΅ ΠΊΠ°ΠΊΠΎΠΌΡ-ΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π° Π²ΡΠ΅ΠΌ. Π Π»ΡΠ±Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½Π½Π°Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠΌ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΉΠΌΠ°ΡΡ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π³ΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΡΠ±ΠΎΠΉ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°Π΄ΠΈΠΎΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΡΡΡ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π’Π°ΠΊ ΠΆΠ΅ ΠΏΠΎΡΡΡΠΏΠ°ΡΡ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ½ΠΈ ΠΎΠ±Π·Π°Π²ΠΎΠ΄ΡΡΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΡΠΈΠΏ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ.
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°ΠΌΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ Π²Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈ ΡΡΠΆΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ Π²Π΅ΡΡΠΌΠ° ΠΏΡΠΎΡΡΠ° Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ. Π Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ»Ρ action, data ΠΈ category (Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ) Π²Π°ΡΠ΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ «ΡΠ²ΠΎΡ» ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π ΡΡΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΈ ΡΡΡΠΎΠΊΠ° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ACTION Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΡΡΠΎΠΊΡ-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Java. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ° Π² Π±ΠΎΠ»ΡΡΠΎΠΌ Π·Π΄Π°Π½ΠΈΠΈ:
ΠΠ°Π»Π΅Π΅ Π²Ρ ΡΠΎΠ·Π΄Π°ΡΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ Intent, Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΠ΅ Π² Π½Π΅Π³ΠΎ Π½ΡΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ sendBroadcast(), ΠΏΠ΅ΡΠ΅Π΄Π°Π² Π΅ΠΌΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Intent. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² extras ΠΊΠ°ΠΊ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ.
ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ°:
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ, ΠΏΠ΅ΡΠ΅Π΄Π°Π»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (ΠΈΠΌΡ ΠΊΠΎΡΠ° ΠΈ Π΅Π³ΠΎ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ), ΠΎΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. ΠΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠ΅ Ρ ΠΊΠ°ΡΡΠ°ΠΌΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΡΠ° Π½Π° ΠΊΠ°ΡΡΠ΅.
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ sendStickyBroadcast() ΠΈ sendOrderedBroadcast().
ΠΠ»Ρ ΡΡΠ°ΡΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΡΡΠΎΠ³ΠΎ Π±ΡΠ»ΠΎ Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, Π½ΠΎ Π½Π°ΡΠΈΠ½Π°Ρ Ρ Android 3.0, Π² ΡΠ΅Π»ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π»ΠΈΡΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ»Π°Π³, ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠΈΠΉ Π·Π°ΠΏΡΡΠΊ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ.
ΠΡ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π΄Π»Ρ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ. Π ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ΅ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π²ΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΡΠΎΠΊΠ°. Π ΠΏΠΎΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ Π½ΡΠΌ.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΊΠ½ΠΎΠΏΠΊΡ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ «ΠΡΠΏΡΠ°Π²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅». ΠΡΠΈΡΠ²ΠΎΠΉΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ onClick Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΠΏΡΡΡΠΈΠ² ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΆΠ°ΡΡ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π’ΠΎΠ»ΡΠΊΠΎ Π²Π°ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠΉΠ΄ΡΡ Π² Π½ΠΈΠΊΡΠ΄Π°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΎ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠΌ Π΄Π»Ρ Π½Π΅Π³ΠΎ. ΠΡΠΏΡΠ°Π²ΠΈΠΌ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π² ΡΠ²ΠΎΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΡΠ°ΠΌΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ²ΠΎΠΈ ΠΆΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΡΠΈΡΠΌΠ½ΠΈΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ±ΡΡΠ½ΡΠΉ Java-ΠΊΠ»Π°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ BroadcastReceiver. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΡΡΡΠ½ΡΡ ΠΊΠ»Π°ΡΡ ΠΈ Π½Π°ΠΏΠΎΠ»Π½ΠΈΡΡ Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ. Π Π°Π½ΡΡΠ΅ ΡΠ°ΠΊ ΠΈ ΠΏΠΎΡΡΡΠΏΠ°Π»ΠΈ. ΠΠΎ Π² ΡΡΡΠ΄ΠΈΠΈ Π΅ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ.
Π©ΡΠ»ΠΊΠ°Π΅ΠΌ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ New | Other | Broadcast Receiver
Π Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°ΡΠΌ ΠΈΠΌΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
Π‘ΡΡΠ΄ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π΄Π²ΡΡ ΠΌΠ΅ΡΡΠ°Ρ . ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΊΠ»Π°ΡΡ MessageReceiver:
ΠΠΎ-Π²ΡΠΎΡΡΡ , Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠΊ.
Π Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠΈΠ»ΡΡΡ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π»ΠΎΠ²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΠ΅ΡΠ½ΡΠΌΡΡ Π² ΠΊΠ»Π°ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ onReceive().
Π‘Π½ΠΎΠ²Π° Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈ Π΅ΡΡ ΡΠ°Π· ΠΎΡΠΏΡΠ°Π²ΠΈΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΠΈΠΊΠΎΠΌ, Π½ΠΎ ΠΈ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠΌ, ΡΠΎ ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ»ΠΎΠ²ΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π΅Π³ΠΎ Π½Π°ΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΡΠ»Π°Π»ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π»ΠΎ.
ΠΡΠΈΡΠΌΠ½ΠΈΠΊΠΈ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ
ΠΠΎΡ ΠΏΠ»Π°Π²Π½ΠΎ ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠ»ΠΈ ΠΊ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²Π°ΠΌ Π½Π΅ ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ΄ΡΡΡΡ ΡΠ°ΡΡΡΠ»Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ, Π³ΠΎΡΠ°Π·Π΄ΠΎ ΡΠ°ΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠ°ΠΊΠΈΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ:
ΠΡΠΈΡΠΌΠ½ΠΈΠΊ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ, ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π°ΠΊΡΠΈΠ²Π½Π°. ΠΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠΌ ΠΈ Π½Π΅Ρ ΡΠΌΡΡΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. ΠΠΎ Π²ΡΡ Π½Π΅ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ°ΠΌΠΈ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ. Π Π² ΡΡΠΎΠΌ Π΅ΡΡΡ ΡΠ²ΠΎΠΉ ΡΠ΅Π·ΠΎΠ½. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π·Π°ΠΏΡΡΠ΅Π½ΠΎ, Π΅ΠΌΡ Π½Π΅Ρ ΡΠΌΡΡΠ»Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ Π·Π°ΡΡΠ΄Π΅ Π±Π°ΡΠ°ΡΠ΅ΠΈ. ΠΠ½Π°ΡΠ΅ Π·Π°ΡΡΠ΄ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡ ΠΎΠ΄ΠΎΠ²Π°ΡΡΡΡ Π΅ΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΏΡΠΈ Π»ΠΈΡΠ½Π΅ΠΉ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π·Π°ΡΡΠ΄Π΅ Π±Π°ΡΠ°ΡΠ΅ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ, ΠΊΠΎΠ³Π΄Π° Π² ΡΡΠΎΠΌ Π΅ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ. Π‘Π»Π΅Π΄ΡΠ΅Ρ ΡΠ²Π΅ΡΡΡΡΡΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠ°ΠΊΠΎΠΉ Π²ΠΈΠ΄ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
ΠΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΠ½ΡΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ΄Π°Π΅ΠΌΡΡ Π² Π½ΡΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° unregisterBroadcastReceiver().
ΠΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡ android.intent.action.TIME_TICK. ΠΡΠΈΡΠΌΠ½ΠΈΠΊ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ. ΠΠΎΠ±Π°Π²ΠΈΠΌ Π½Π° ΡΠΊΡΠ°Π½ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄Π»Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΠΌΠ΅Π½Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π²ΡΡΡΠ½ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ TimeBroadcastReceiver, Π½Π°ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΎΡ BroadcastReceiver:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΠΊΠ»Π°ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΠ° ΠΈ ΡΠ΅ΡΠ΅Π· ΡΠ°Π±Π»ΠΎΠ½, ΠΊΠ°ΠΊ ΠΌΡ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΄Π°Π»ΠΈΡΠ΅ Π·Π°ΠΏΠΈΡΡ ΠΎ Π½ΡΠΌ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΠΌ ΠΎΠ½ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ. ΠΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ, ΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ ΡΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΌ Π½Π΅ ΠΏΡΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠΈΠ»ΡΡΡΡ.
ΠΡΠΊΡΠΎΠ΅ΠΌ ΠΊΠΎΠ΄ Π³Π»Π°Π²Π½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌ (Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ½ΠΈΠΌΠ΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ) ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ:
ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΠΏΠ΅ΡΠ²ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ, ΡΡΠΎΠ±Ρ Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ°ΡΡΡΠ»ΠΊΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΌΠΈΠ½ΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π·Π°ΠΏΡΡΠΊ Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠ΅Π³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ ΡΠ΅ΠΊΡΡΠΈΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ Π½Π° Π΄ΡΡΠ³ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ Π²ΡΡ ΡΠ°Π²Π½ΠΎ Π±ΡΠ΄Π΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎ. Π― Π²ΠΈΠ΄Π΅Π» ΡΠ°ΡΡΠΎ Π½Π° ΡΠΎΡΡΠΌΠ°Ρ Π²ΠΎΠΏΡΠΎΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π°Π½Π½ΠΎΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ android.intent.action.TIME_TICK. Π Π½Π΅ Π½Π°Π΄ΠΎ Π±ΡΠ»ΠΎ Π΅Π³ΠΎ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅.
Π Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈ ΠΈ ΡΠ½ΠΈΠΌΠ°Π»ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΡΠ΅ΡΠ΅Π· Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ onResume(), Π° ΡΠ½ΠΈΠΌΠ°ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ onPause().
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΠ»ΡΠΆΠΈΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ, Π΅ΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² BroadcastReceiver Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ. ΠΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ ΡΡΠ°ΡΡΡ (en).
TIME_TICK Π½Π° Kotlin
ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΠΏΠΎΡ ΠΎΠΆΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° Kotlin. Π Π°Π·ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΡΠΊΡΠ°Π½Π΅ TextView, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π²ΡΠ΅ΠΌΡ. ΠΠΎΠ΄ Π΄Π»Ρ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π½ΠΈΠΆΠ΅. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΌΡ Π½Π΅ ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ BroadcastReceiver, Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π² onResume() ΠΈ ΡΠ½ΠΈΠΌΠ°Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π² onPause().
ΠΠ²ΡΠΎΡΡΠ°ΡΡ Activity ΠΈΠ»ΠΈ Service ΠΏΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ (ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ΅) Π΄Π΅Π²Π°ΠΉΡΠ°
ΠΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ.
ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΡΠ΅ΡΠ²ΠΈΡ) Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ android.intent.action.BOOT_COMPLETED:
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ Π² ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ΅.
Π‘Π»Π΅Π΄ΠΈΠΌ Π·Π° ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ
ΠΠ΅Ρ, ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄ΡΡ Π½Π΅ ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌ ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΊΠΎΡΠ°. ΠΠΌΠ΅Π΅ΡΡΡ Π² Π²ΠΈΠ΄Ρ ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΎΡ ΡΠ»Π΅ΠΊΡΡΠΈΡΠ΅ΡΡΠ²Π°. ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΡ Π·Π°ΡΡΠ΄ΠΊΠΈ, ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΠΏΠΎΠ²Π΅ΡΠ°Π΅Ρ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΎΠ±ΡΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ android.intent.action.ACTION_POWER_DISCONNECTED.
ΠΠ΅ ΡΡΠ°Π½Π΅ΠΌ Π·Π°Π²ΠΎΠ΄ΠΈΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊ, Π° ΠΎΡΠΊΡΠΎΠ΅ΠΌ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠΈΠ»ΡΡΡ ΠΊ ΠΏΡΠΈΡΠΌΠ½ΠΈΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΎΡ ΡΠ°Π΄ΠΈΡΡΠΊΠΈ ΠΡΡ.
Π Π² ΠΊΠ»Π°ΡΡΠ΅ MessageReceiver Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΌΠ΅ΡΠΎΠ΄Π°.
ΠΡΠΈΠΌΠ΅Ρ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅. ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ ΠΊ ΠΏΠΈΡΠ°Π½ΠΈΡ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ΄Π΅ΡΠ½ΠΈΡΠ΅ ΠΊΠ°Π±Π΅Π»Ρ. ΠΠ° ΡΠΊΡΠ°Π½Π΅ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
Android Broadcast Receivers Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Π½Π° ΠΠ΅Π΄ΠΈΡΠΌΠ΅ ΠΎ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Broadcast Receivers (ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ). ΠΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π°Π½Π΄ΡΠΎΠΈΠ΄, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ (broadcast messages) ΠΈΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΡ (events).
ΠΠ»Ρ ΡΠ΅Π³ΠΎ Π½ΡΠΆΠ½Ρ Broadcast Receivers?
ΠΠΎΠΏΡΡΡΠΈΠΌ, Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΡ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠ»ΠΎΡ Π° ΠΏΠΎ ΡΠ°Π·Π½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π΅Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ (Broadcast Receiver), ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠΎΠΎΠ±ΡΠ°Π΅ΡΠ΅. ΠΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅Π²Π°ΠΆΠ½ΠΎ, ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π»ΠΈ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΠ½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
Π’Π΅ΠΎΡΠΈΡ Broadcast Receivers
Π¨ΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Android, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ (ΠΈΠ»ΠΈ ΡΠΎΠ±ΡΡΠΈΡ) ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠΎΡΠ΅ΠΊ:
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ½ΠΈ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½Ρ Π½Π° ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ°Π½ΡΠ»ΡΡΠΈΡ ( broadcast).
Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΡ ( broadcast) β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π² ΠΎΠ±ΡΠ΅ΠΊΡ Intent. Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠ²Π½ΠΎΠΉ ΠΈΠ»ΠΈ ΡΠ²Π½ΠΎΠΉ.
ΠΡΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ:
1.ΠΠ±ΡΡΠ²ΠΈΠ² Π΅Π³ΠΎ Π² ΡΠ°ΠΉΠ»Π΅ AndroidManifest.xml Ρ ΡΠ΅Π³ΠΎΠΌ (ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ):
ΠΡ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ Π·Π°ΡΠ²Π»Π΅Π½Π½ΡΠΉ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ exported = βtrueβ. ΠΡΠΎΡ Π°ΡΡΠΈΠ±ΡΡ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ, ΡΡΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Π²Π½Π΅ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
2. ΠΠ»ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΡΠ΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ registerReceiver (ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ):
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Broadcast Receivers
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ°ΡΡΠΈΡΠΈΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»Π°ΡΡ BroadcastReceiver ΠΈ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ onReceive:
Π‘ΠΎΠ±ΡΠ°Π² Π²ΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅, ΠΏΠΎΠ»ΡΡΠΈΠΌ:
ΠΠ΅ΡΠΎΠ΄ onReceive Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅, ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΊΡΠ°ΡΠΊΠΈΠΌ.
ΠΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π΄ΠΎΠ»Π³ΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΠΌΠ΅ΡΠΎΠ΄Π°. Π§ΡΠΎΠ±Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΡΡΠΎ, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ goAsync ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠ² Π·Π°Π΄Π°Π½ΠΈΠΉ (scheduling a job). ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ.
ΠΡΠΈΠΌΠ΅Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ
Π§ΡΠΎΠ±Ρ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ, Π²Π°ΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°:
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅:
ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π΄Π»Ρ IntentFilter β ΡΡΠΎ ΡΡΡΠΎΠΊΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ°Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅.
ΠΠ΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΎΡΠΌΠ΅Π½ΠΈΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ΅Π½
Π’ΡΠ°Π½ΡΠ»ΡΡΠΈΡ ΡΠΎΠ±ΡΡΠΈΡ
Π‘ΠΌΡΡΠ» ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΠΈΠ· Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΡ, ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ Π²Π½ΡΡΡΠΈ Π½Π΅Π³ΠΎ. ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΈ ΠΈΠ·-Π·Π° ΡΡΠΎΠ³ΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π΄ΡΡΠ³ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΅ΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅.
ΠΡΡΡ ΡΡΠΈ ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΉ:
ΠΠ° ΡΡΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡΡ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ½ΠΊΡΡ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ Π² ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°Ρ , ΠΎΡΠ½ΠΎΡΡΡΠΈΡ ΡΡ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΠ‘ Android (Π½Π°ΡΠΈΠ½Π°Ρ Ρ 7.0). ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π±ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎΠ± ΡΡΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ , Π΄ΡΠΌΠ°Ρ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Broadcast Receivers.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Android O β ΡΡΠΎ ΡΠ΅, ΠΎ ΠΊΠΎΡΠΎΡΡΡ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ. ΠΡΠΈΡΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±ΡΠ»ΠΈ Π²Π½Π΅ΡΠ΅Π½Ρ, Π·Π°ΠΊΠ»ΡΡΠ°Π»Π°ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ, ΡΠ°Π·ΡΡΠ΄ΠΊΠ΅ Π°ΠΊΠΊΡΠΌΡΠ»ΡΡΠΎΡΠ° ΠΈ ΡΡ ΡΠ΄ΡΠ°Π»ΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π΄Π°ΠΆΠ΅ ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π΅ Π·Π°ΠΏΡΡΠ΅Π½Ρ) ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π»ΠΈ ΠΎΠ±ΡΠ΅ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΈ ΠΊΠΎΠ³Π΄Π° ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ, Π²ΠΎΠ·Π½ΠΈΠΊ Ρ Π°ΠΎΡ. ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΎΠΆΠΈΠ»ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, Π½ΡΠΆΠ½ΠΎ Π»ΠΈ ΡΡΠΎ-ΡΠΎ Π΄Π΅Π»Π°ΡΡ ΠΈΠ·-Π·Π° ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ. ΠΡΠΈΠΌΠΈΡΠ΅ Π²ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Wi-Fi, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ°ΡΡΠΎ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ, ΠΈ Π²Ρ Π½Π°ΡΠ½Π΅ΡΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΈ ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Broadcast Receivers
Π§ΡΠΎΠ±Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΡΠΈΠΌ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌ, Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π·Π±ΠΈΠ²ΠΊΠ° Π΄ΡΡΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ ΡΠΈΡΠΎΠΊΠΎΠ²Π΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ ΡΠ²ΠΎΡ ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ ΠΈ ΡΠ²ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π²Π°ΡΠΈΠΌ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌ.
Π‘ΡΡΠ»ΠΊΠΈ Π½Π° ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ ΡΡΠΊ ΠΈΡΠΏΡΡΠ°ΡΡ ΡΠ°Π΄ΠΎΡΡΡ ΠΈ ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΈ Π²Π΅ΡΠ°Π½ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ ΡΡΠΈΠΌ ΡΡΡΠ»ΠΊΠ°ΠΌ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π°ΡΡΡΠΎΠΈΠ»: