Android рдПрд╕рдПрдордПрд╕ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рд╡рд┐рдХрд╛рд╕

рдирдорд╕реНрдХрд╛рд░, рдкреНрд░рд┐рдп рдкреНрд░рднрд╛рдордВрдбрд▓!

рдореЗрд░реЗ рдкреНрд░рд╢реНрди рдХреЗ рдЙрддреНрддрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореИрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реВрдВред "рдПрдВрдЯреАрд╕реНрдкреИрдо" рдПрдХ рдмрд╣реБрдд рд╣реА рд╣рд╛рдИ-рдкреНрд░реЛрдлрд╛рдЗрд▓ рдирд╛рдо рд╣реИ рдЬреЛ рдХрд┐рдП рдЧрдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╕реНрддрд░ рдкрд░ рдпрд╣ рдХреЗрд╡рд▓ рдкреНрд░реЗрд╖рдХреЛрдВ рдХреА рдПрдХ рдХрд╛рд▓реА рд╕реВрдЪреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореИрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдВрдЯреА-рд╕реНрдкреИрдо рдмрдирд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред рдиреАрдЪреЗ рджреА рдЧрдИ рд╕рд╛рдордЧреНрд░реА рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рдЧрдИ рд╣реИ рдЬреЛ рдХрдо рд╕реЗ рдХрдо рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд╡рд┐рдХрд╛рд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ рдФрд░ рдХрдо рд╕реЗ рдХрдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрджрдо рдЙрдард╛рдП рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╕реНрдХреНрд░реИрдЪ рд╕реЗ рдкреВрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБред рдХреМрди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ, рдмрд┐рд▓реНрд▓реА рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред


рдХреНрдпрд╛ рдЖрдкрдХреЛ рдпрд╛рдж рд╣реИ рдХрд┐ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рд╢реБрд░реВ рд╣реБрдЖ?


рдПрдХ рдорд╛рдореВрд▓реА рдЧреАрддрд╛рддреНрдордХ рд╡рд┐рд╖рдпрд╛рдВрддрд░ред рдпрд╣ рд╕рдм рдЗрд╕ рддрдереНрдп рд╕реЗ рд╢реБрд░реВ рд╣реБрдЖ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдореЛрдмрд╛рдЗрд▓ рдлреЛрди рдирдВрдмрд░ рдХрд╣реАрдВ рд▓реАрдХ рдХрд░ рджрд┐рдпрд╛ред рдореБрдЭреЗ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рджреЛрд╕реНрдд рдЬреЛ рдПрдХ рд╣реА рд╕рд╛рдЗрдЯ рдкрд░ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВ, рдЙрд╕реА рд╕рдордп рдореБрдЭреЗ рдПрдХ рд╣реА рд╕реНрдкреИрдо рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдм рдЙрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рд╢реБрдХреНрд░рд╡рд╛рд░ рдХреЛ, рдореБрдЭреЗ рд╡рд┐рднрд┐рдиреНрди рдХреНрд▓рдмреЛрдВ рд╕реЗ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдорд┐рд▓рдиреЗ рд▓рдЧреЗ рдФрд░ рд╣рд░ рд╣рдлреНрддреЗ рдХреЗрд╡рд▓ рд╕рдВрджреЗрд╢ рдХрд╛ рдкреНрд░рд╡рд╛рд╣ рдмрдврд╝рддрд╛ рдЧрдпрд╛ред рдЬрдм рд╕реЗ рдореИрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдУрдПрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдлреЛрди рдХрд╛ рдорд╛рд▓рд┐рдХ рдмрди рдЧрдпрд╛, рдореИрдВрдиреЗ рдПрдХ рдРрд╕рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдЬреЛ рдЗрд╕ рдЕрдкрдорд╛рди рд╕реЗ рдирд┐рдкрдЯреЗрдЧрд╛ред рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрднреА рдЖрд╕рд╛рди рддрд░реАрдХреЛрдВ рдХреА рддрд▓рд╛рд╢ рдирд╣реАрдВ рдХрд░рддреЗ - рдореИрдВ рдПрдХ рдореЛрдмрд╛рдЗрд▓ рдСрдкрд░реЗрдЯрд░ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдЖрд╡реЗрджрди рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдФрд░ рд▓реЗрдЖрдЙрдЯ


рдЖрд╡реЗрджрди рддреАрди рднрд╛рдЧреЛрдВ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ:
  1. рджрд░рдЕрд╕рд▓ рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдЬреЛ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рддрд╛ рд╣реИ;
  2. рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдЬреЛ рдкреНрд░реЗрд╖рдХреЛрдВ рдФрд░ рдЙрдирд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдПрдХ рдХрд╛рд▓реА рд╕реВрдЪреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ;
  3. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕

рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдмреЙрдХреНрд╕ рдпрд╛ рд╕рдВрдкрд░реНрдХреЛрдВ рд╕реЗ рдкреНрд░реЗрд╖рдХреЛрдВ рдХреА рдХрд╛рд▓реА рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрд╕рдХреЗ рдкреНрд░реЗрд╖рдХ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ рдХрд╛рд▓реА рд╕реВрдЪреА рдореЗрдВ рд╣реИ, рддреЛ рдпрд╣ рд╕рдВрджреЗрд╢ рдХреЛ рддрдерд╛рдХрдерд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрд╛рдж рдореЗрдВ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХреЗред рдпрджрд┐ рдкреНрд░реЗрд╖рдХ "рд╕рд╛рдл" рд╣реИ, рддреЛ рдПрд╕рдПрдордПрд╕ "рдЗрдирдмреЙрдХреНрд╕" рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрдЧрд╛ред

рдкрд╣рд▓рд╛ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк


рдЬрд▓реНрджреА рд╕реЗ рдирд╣реАрдВ рдХрд╣рд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд╣рд▓реЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдПрдХ рджрд┐рди рднреА рдирд╣реАрдВ рдЪрд▓рд╛ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдПрдХ рдкрд╛рда рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдШрдЯрдирд╛ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдЗрд╕ рдШрдЯрдирд╛ рдХреЗ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдЗрдирдмреЙрдХреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдЙрди рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдкреНрд░реЗрд╖рдХ рдХрд╛рд▓реА рд╕реВрдЪреА рдореЗрдВ рдереЗред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдлреЛрди рдХреЗ рдорд╛рд▓рд┐рдХ рдХреЛ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рд┐рдЧреНрдирд▓ рд╕реБрдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЬрдм рдореИрдВ рдЗрдирдмреЙрдХреНрд╕ рдЦреЛрд▓реВрдВрдЧрд╛, рддреЛ рдореБрдЭреЗ рд╡рд╣рд╛рдВ рдХреБрдЫ рднреА рдирдпрд╛ рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛! рдФрд░ рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдореИрд╕реЗрдЬ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдвреВрдВрдврдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдпрд╣ рдЗрдирдмреЙрдХреНрд╕ рдореЗрдВ рдЖ рдЬрд╛рдПред

рд╕рдВрджреЗрд╢ рдЕрд╡рд░реЛрдзрди


рдПрдВрдбреНрд░реЙрдЗрдб рдУрдПрд╕ рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ, WI-FI рдЪрд╛рд▓реВ рдХрд░рдиреЗ, рдХрдиреЗрдХреНрд╢рди рдЪрд╛рд░реНрдЬ рдХрд░рдиреЗ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╕рд╛рд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рддрдВрддреНрд░ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдпрд╣рд╛рдВ (4 рдЕрдиреБрд╡рд╛рдж) рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╕рд╛рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд┐рд╕реАрд╡рд░ (рд╢реНрд░реЛрддрд╛) рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
  1. рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯрд╕реЗрд╡рд░ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реА рдЕрдкрдиреА рдЦреБрдж рдХреА рдХреНрд▓рд╛рд╕ рдмрдирд╛рдПрдБ рдФрд░ рдСрдирд░рд┐рд╡ рд╡рд┐рдзрд┐ рдХреЛ рдУрд╡рд░рд▓реЛрдб рдХрд░реЗрдВ;
  2. рдЗрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ рдФрд░ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдорд╛рдЪрд╛рд░ рдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред


рдПрдХ рд╢реНрд░реЛрддрд╛ рдмрдирд╛рдПрдБ


public class SMSReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Bundle bundle = intent.getExtras(); Object[] pdus = (Object[]) bundle.get("pdus"); if (pdus.length == 0) { return; } Sms sms = Sms.fromPdus(pdus, context); SmsDatabase db = null; try { db = SmsDatabase.open(context); if (Filter.filter(context).isSpam(sms, db)) { abortBroadcast(); db.messages().save(sms); } } finally { if (db != null) db.close(); } } } 


рдЬрдм рднреА рдлреЛрди рдкрд░ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдЖрддрд╛ рд╣реИ, рд╣рд░ рдмрд╛рд░ рдСрдирд░реЗрдХреНрдЯрд┐рд╡ рд╡рд┐рдзрд┐ рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдЖрдк рдЖрд╢рдп рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдзреНрдпрд╛рди рджреЗрдВ , рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдмреНрд░реЙрдбрдХрд╛рд╕реНрдЯрд░ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╡рд░реНрдЧ рдСрдирд░рд╕реАрд╡ рдкрджреНрдзрддрд┐ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рд╣реА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдирд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╣реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрджреНрдзрддрд┐ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рднреА рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХрдХреНрд╖рд╛ рдХреЗ рдЧреИрд░-рд╕реНрдерд┐рд░ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкрд╣рд▓реА рджреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ, рд╣рдо PDU рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдореЛрдЯреЗ рддреМрд░ рдкрд░, рдпрд╣ "рдХрдЪреНрдЪреЗ" рд░реВрдк рдореЗрдВ рдПрд╕рдПрдордПрд╕ рд╣реИред рд╢реВрдиреНрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо Sms рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рдХрдХреНрд╖рд╛ рдореЗрдВ рд╕реНрдереИрддрд┐рдХ fromPdus () рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрджреЗрд╢ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдмрд╛рдж рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдлрд┐рд░, рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рд┐рд░реНрдл рдкреНрд░рд╛рдкреНрдд рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдХрд╛ рдкреНрд░реЗрд╖рдХ рдХрд╛рд▓реА рд╕реВрдЪреА рдореЗрдВ рд╣реИред рдпрджрд┐ рдпрд╣ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рдВрджреЗрд╢ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рд╕рд╛рд░рдг рдХреЛ рдмрд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП abortBroadcast () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдПрд╕рдПрдордПрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрдирд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХреГрдд, рдХрдо рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╡рд╛рд▓реЗ рд╕рднреА рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛, рдпрд╣ рднреА рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдШрдЯрдирд╛ рд╣реБрдИ рдереАред рд╣рдо рдЕрдкрдиреЗ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВрдЧреЗ (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рд╕реЗ рдЕрдзрд┐рдХ рдЬреЛ рдзреНрд╡рдирд┐ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рдХрдВрдкрди рдХрд░рддрд╛ рд╣реИ) рддрд╛рдХрд┐ рд╕реНрдкреИрдо рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкрд░реЗрд╢рд╛рди рди рдХрд░реЗрдВред рдиреАрдЪреЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝реЗрдВред

рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдСрди-рд░реЗрдХреНрдЯрд┐рд╡ рд╡рд┐рдзрд┐ рдореЗрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рджреЛ рдмрд╛рд░ рдЦреЛрд▓рд╛ рдЧрдпрд╛ рдерд╛: рдлрд╝рд┐рд▓реНрдЯрд░ рдХреНрд▓рд╛рд╕ рдореЗрдВ рдкрд╣рд▓реА рдмрд╛рд░ рд╕рдВрджреЗрд╢ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп, рдФрд░ рджреВрд╕рд░реА рдмрд╛рд░ рд╕реАрдзреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдПрд╕рдПрдордПрд╕ рд▓рд┐рдЦрддреЗ рд╕рдордпред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВрдиреЗ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдФрд░ рдХреЛрдб рдХреА "рд╕реБрдВрджрд░рддрд╛" рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдХреЛрдб рдХреЛ "рдереЛрдбрд╝рд╛ рдФрд░ рдЧрд▓рдд" рдмрдирд╛ рджрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдСрдирд░реЗрдХреНрдЯрд┐рд╡ рд╡рд┐рдзрд┐ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп 10 рд╕реЗрдХрдВрдб рддрдХ рд╕реАрдорд┐рдд рд╣реИ рдФрд░ рдпрд╣ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рджреЛ рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдпрджрд┐ рд╣рдорд╛рд░реА рд╡рд┐рдзрд┐ рдЖрд╡рдВрдЯрд┐рдд рд╕рдордп рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рддреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдЕрдЧрд▓реЗ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреА рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдЧрд╛ рдФрд░ рдлрд┐рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╢реНрд░реЛрддрд╛ рдкрдВрдЬреАрдХрд░рдг


рд╣рдордиреЗ рдПрдХ рд╢реНрд░реЛрддрд╛ рд▓рд┐рдЦрд╛ред рдпрд╣ рдЙрдирдХреА рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ:
  1. рдкреНрд░реЛрдЧреНрд░рд╛рдорд░рд╛рдЗрд╡рд░ () рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреЗрд╡рд▓ рддрднреА рдЬреАрд╡рд┐рдд рд░рд╣реЗрдЧрд╛ рдЬрдмрдХрд┐ рдкрдВрдЬреАрдХреГрдд рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдШрдЯрдХ рдЬреАрд╡рд┐рдд рд╣реИ (рдЖрдорддреМрд░ рдкрд░ рдпрд╣ рдЧрддрд┐рд╡рд┐рдзрд┐ рд╣реИ);
  2. AndroidManifest рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рддрдм рднреА рдЬреАрд╡рд┐рдд рд░рд╣реЗрдЧрд╛, рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдВрдж рд╣реЛ, рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рднрд▓реЗ рд╣реА рдлреЛрди рд░рд┐рдмреВрдЯ рд╣реЛ рдЬрд╛рдП!


рдЬрд╛рд╣рд┐рд░ рд╣реИ, рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдЕрдзрд┐рдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
 <application android:label="@string/app_name" android:icon="@drawable/app_icon"> тАжтАжтАжтАжтАж.    тАжтАжтАжтАжтАжтАжтАж.. <receiver android:name=".SMSReceiver" android:enabled="false"> <intent-filter android:priority="1000"> <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </intent-filter> </receiver> </application> 


рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдмреЗрд╣рдж рд╕рд░рд▓ рд╣реИред рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рд╡рд░реНрдЧ (Android: рдирд╛рдо) рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд░рд╛рджреЗ-рдлрд╝рд┐рд▓реНрдЯрд░ рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (Android: рдкреНрд░рд╛рдердорд┐рдХрддрд╛, 1000 рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп рд╣реИ; рдПрдХ рдорд╛рдирдХ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХрдВрдкрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрд╡рд╛рдЬрд╝ рдХрд░рддрд╛ рд╣реИ, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ 999 рд╣реИ) рдФрд░ рд╣рдо рдХрд┐рди рдШрдЯрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрддреЗ рд╣реИрдВ; android.provider.Telephony.SMS_RECEIVED)ред

рд╢реНрд░реЛрддрд╛ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░рдирд╛


рдпрд╣ рдХрд╣рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реИред рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреЛ рд╕рдХреНрд░рд┐рдп рдФрд░ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдХреЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд░реНрдЧ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП (), рдСрдл () рдФрд░ рд╕рдХреНрд╖рдо () рдЗрд╕рдХреЗ рдЕрдиреБрд░реВрдк рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВред

рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд░реНрдЧ, рд╡реИрд╕реЗ, рдПрдХ рдПрдХрд▓ рд╡рд░реНрдЧ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреВрд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдпрд╣ рд╕рдВрджрд░реНрдн рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред SMSReceiver рд╡рд░реНрдЧ рдореЗрдВ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдерд┐рд░ рдлрд╝рд┐рд▓реНрдЯрд░ () рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрдн рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд▓реЗрддрд╛ рд╣реИред

 private static Filter _filter; public static Filter filter(Context context) { if (_filter == null || !_filter._context.equals(context)) { _filter = new Filter(context); } return _filter; } 


рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдореЗрд░рд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗрд╡рд▓ рдПрдХрдорд╛рддреНрд░ рд╕рдЪ рд╣реИред рдпрджрд┐ рдЖрдк рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рдХреА рдкреЗрд╢рдХрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЦреБрд╢реА рд╕реЗ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ред

рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд░реНрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ, рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░реЗрдВ:
 private final ComponentName componentName; private final PackageManager packageManager; private Context _context; private Filter(Context context) { _context = context; String packageName = context.getPackageName(); String receiverComponent = packageName + ".SMSReceiver"; componentName = new ComponentName(packageName, receiverComponent); packageManager = context.getPackageManager(); } 


рдШрдЯрдХрдирд╛рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдШрдЯрдХ рдХрд╛ рдпреЛрдЧреНрдп рдирд╛рдо рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛, рдЬрд┐рд╕рдореЗрдВ рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рдФрд░ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо (SMSReceiver) рд╢рд╛рдорд┐рд▓ рд╣реИред
packageManager - рдирд╛рдо рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдШрдЯрдХреЛрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд░реНрдЧ рд╣реИред

рдПрдХ рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИ:
 public void on() { if (!enabled()) { packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); } else { Util.showMessage(_context.getString(R.string.alreadyStarted), _context); } } 


рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИред рдпрджрд┐ рдШрдЯрдХ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдХреНрд╖рдо рд╣реИ (рд╕рдХреНрд╖рдо рд╣реИ) рдПрдХ рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рдкрджреНрдзрддрд┐ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдмрд╛рдж рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ), рдлрд┐рд░ рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЕрдЧрд░ рдпрд╣ рдмрдВрдж рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВред рдпреВрдЯреАрд▓ рд╕реНрдЯреИрдЯрд┐рдХ рдХреНрд▓рд╛рд╕ рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдп рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╢реЛ рдореЗрд╕реЗрдЬ рд╡рд┐рдзрд┐ рд╕реНрдХреНрд░реАрди рдкрд░ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдЯреЛрд╕реНрдЯ рдХреНрд▓рд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред

рдмрдВрдж () рд╡рд┐рдзрд┐, рдЬреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рддреА рд╣реИ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдСрди () рдкрджреНрдзрддрд┐ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ PackageManager.COMPONENT_ENABLED_STATE_DISABLED рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдлрд╝рд┐рд▓реНрдЯрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрдВрдж рд╣реИ, рддреЛ рдПрдХ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдлрд╝рд┐рд▓реНрдЯрд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐ рдФрд░ рднреА рд╕рд░рд▓ рд▓рдЧрддреА рд╣реИ:
 public boolean enabled() { int enabled = packageManager.getComponentEnabledSetting(componentName); return (enabled == PackageManager.COMPONENT_ENABLED_STATE_ENABLED); } 


рдЬреВрдБ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░реЗрдВ


рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рдФрд░ рд╡рд┐рдзрд┐ рд╢реЗрд╖ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ isSpam () рд╡рд┐рдзрд┐ рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЖрд╡реЗрджрди рдХрд╛ рдореБрдЦреНрдп рдХрд╛рд░реНрдп рдХрд░рддреА рд╣реИред рд╡рд┐рдзрд┐ рдЕрддреНрдпрдВрдд рд╕рд░рд▓ рд╣реИред рд╡рд╣ рдПрд╕рдПрдордПрд╕ рд╕реЗ рдкреНрд░реЗрд╖рдХ рд╕рдВрджреЗрд╢ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдФрд░ рдЙрд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рд╣реИ, рддреЛ рд╕рдВрджреЗрд╢ рд╕реНрдкреИрдо рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

 public boolean isSpam(Sms sms, SmsDatabase db) { Sender sender = sms.sender(); return db.senders().exists(sender); } 


рдПрд╕рдПрдордПрд╕ рд╡рд░реНрдЧ


рдПрд╕рдПрдордПрд╕ рд╡рд░реНрдЧ рдкрд╣рд▓реЗ рд╣реА рджреЛ рдмрд╛рд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рдмрддрд╛рдирд╛ рдЬрд░реВрд░реА рд╣реЛрдЧрд╛ред рдпрд╣ рд╡рд░реНрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлрд╝реАрд▓реНрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

 private String _body; private Sender _sender; private long _timestamp; 


рдЬрд╣рд╛рдВ _body рд╕рдВрджреЗрд╢ рдХрд╛ рдореБрдЦреНрдп рднрд╛рдЧ рд╣реИ, _sender рд╕рдВрджреЗрд╢ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ _timestamp рд╡рд╣ рд╕рдордп рд╣реИ рдЬрдм рд╕рдВрджреЗрд╢ UNIX рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖ рдерд╛ред

рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд╖рдХ рд╡рд░реНрдЧ рдорд╛рдирдХ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╣рд╛рде рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдкреНрд░реЗрд╖рдХ рдХреЗ рдлреЛрди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдкреНрд░реЗрд╖рдХ рдХрд╛ рдирд╛рдо рдлреЛрди рдмреБрдХ рд╕реЗ рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдПрд╕рдПрдордПрд╕ рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рд╕реНрдерд┐рд░ рд╕реНрдЯреЗрдкрд╕ () рд╡рд┐рдзрд┐ рд╣реИ рдЬреЛ рдкреАрдбреАрдпреВ рд╕реЗ рд╕рдВрджреЗрд╢ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдЖрдЗрдП рдЗрд╕рдХреЗ рдХреЛрдб рдХреЛ рджреЗрдЦреЗрдВ:
 public static Sms fromPdus(Object[] pdus, Context context) { Sms result = new Sms(); for (int i = 0; i < pdus.length; i++) { SmsMessage sms = SmsMessage.createFromPdu((byte[]) pdus[i]); result._body += sms.getMessageBody(); } SmsMessage first = SmsMessage.createFromPdu((byte[]) pdus[0]); result._sender = new Sender(first.getOriginatingAddress(), context); result._timestamp = first.getTimestampMillis(); return result; } 


рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рд╡рд┐рдзрд┐ рдЬрдЯрд┐рд▓ рд▓рдЧ рд╕рдХрддреА рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдПрдХрдорд╛рддреНрд░ рдХрдард┐рдирд╛рдИ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдХреЛ рдХрдИ рднреМрддрд┐рдХ рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдореЗрд░рд┐рдХрд╛ рдХреА рдЦреЛрдЬ рдирд╣реАрдВ рдХреА рд╣реИред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рднрд╛рд╡ рдЙрди рд╕рднреА рдХреЗ рд▓рд┐рдП рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд╣рдореЗрд╢рд╛ рдПрдХ рдПрд╕рдПрдордПрд╕ рдореЗрдВ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдмрд┐рдирд╛ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдкреИрд╕реЗ рдмрдЪрд╛рддреЗ рд╣реИрдВред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рдЪрдХреНрд░ рдореЗрдВ, рд╣рдо рд╕рдВрджреЗрд╢ рд╢рд░реАрд░ рдХреЛ рдЯреБрдХрдбрд╝реЛрдВ рдореЗрдВ рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдо рдкрд╣рд▓реЗ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдПрд╕рдПрдордПрд╕ рд╡рд░реНрдЧ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛


рдЕрднрд┐рдорд╛рдиреА рд╕реНрдкреИрдорд░ рдХреА рдПрдХ рдХрд╛рд▓реА рд╕реВрдЪреА, рд╕рд╛рде рд╣реА рдЙрдирдХреЗ рдЧреИрд░-рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд╛рд░реНрдп рдХреЗ рдкрд░рд┐рдгрд╛рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрд╣ рджреЗрдЦ рд╕рдХреЗ рдХрд┐ рдЙрд╕реЗ рд╡рд╣рд╛рдБ рдХреНрдпрд╛ рдкрд╕рдВрдж рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╕рдВрдкрд░реНрдХреЛрдВ рд╕реЗ рдПрдХ рдЯреЗрд▓реАрдлрд╝реЛрди рдирдВрдмрд░ рдХреЛ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЕрдкрдиреЗ рдорд╛рд▓рд┐рдХ рдХреЗ рд╕рд╛рде рд╕рд╛рдордВрдЬрд╕реНрдп рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╡рд╣ рдЙрд╕рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдПрд╕рдПрдордПрд╕ рдХреЛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣ рд╕рдХрддрд╛ рд╣реИред

рд╣рдо рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ Android рдореЗрдВ, рдмреЙрдХреНрд╕ рдХреЗ рдареАрдХ рдмрд╛рд╣рд░ SQLite DBMS рд╣реИред рдореИрдВрдиреЗ рдорд╛рдирдХ JAVA рдХрдХреНрд╖рд╛рдУрдВ рдФрд░ SQL рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдкреВрд░реЗ рддрд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред рдорддрд▓рдмреА рдХрд╛рдиреВрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЬреИрд╕реЗ рд╣реА рдореИрдВрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рдЗрд╕ рднрд╛рдЧ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛, рдореИрдВрдиреЗ рд╣реЗрдмрд░реЗ рдкрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдУрдЖрд░рдПрдо рдкрд░ рдПрдХ рд▓реЗрдЦ рдкрдврд╝рд╛ред

рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдореИрдВрдиреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдмрдирд╛рдпрд╛ рд╣реИ: рдПрдХ рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рд╛ - рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ - рдХрдиреЗрдХреНрд╢рди рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ред рдпрд╣ рдЕрднреНрдпрд╛рд╕ SQLite рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ DBMS рдПрдХ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рд╣реИ рдФрд░ рдкрдврд╝рдиреЗ рдпрд╛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреМрд░рд╛рди рдЕрд╡рд░реБрджреНрдз рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд░рд╣рдиреЗ рд╡рд╛рд▓реЗ рдХрдиреЗрдХреНрд╢рди рдирд╣реАрдВ рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд░рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╣реИрдВ, рдФрд░ рд▓реЗрдЦ рд░рдмрдбрд╝ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡реЗ рд╕рднреА рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП, рд╕рд╛рд░ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЗрд╡рд▓ рдЙрд╕ рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдордиреЗ SMSReceiver рд╡рд░реНрдЧ рдХреЗ onReceive рд╡рд┐рдзрд┐ рдореЗрдВ рджреЗрдЦрд╛ рдерд╛ред

рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ "db.messages ()ред рд╕рд╣реЗрдЬреЗрдВ (sms)" рд╣рдореЗрдВ рдмрддрд╛рддреА рд╣реИ рдХрд┐, db рдХрдиреЗрдХреНрд╢рди рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рд╕рдВрджреЗрд╢ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕реЗрд╡ (рдЪрд░рдг) рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдореЗрдВ рдПрдХ рдирдпрд╛ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдореИрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рднреА рд╡рд░реНрдЧ рдФрд░ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рд╣реИрдВред

 public void save(Sms sms) { if (!Preferences.get(_context).storeSms()) return; int maxCount = Preferences.get(_context).storedSmsAmount(); if (count() >= maxCount) trim(maxCount - 1); SQLiteStatement insert = _db.compileStatement( "INSERT INTO Messages(Phone, Timestamp, Body)" + "VALUES (?, ?, ?)"); insert.bindString(1, sms.sender().phone()); insert.bindLong(2, sms.timestamp()); insert.bindString(3, sms.body()); insert.execute(); } 


рдХреЛрдб рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рд╣рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИ рдФрд░ рдзреНрд╡рдЬ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреА рд╣реИ, рдЬреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЗрдЪреНрдЫрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рднрдВрдбрд╛рд░рдг рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдмрд╕ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВред

рдлрд┐рд░, рдлрд┐рд░ рд╕реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗ, рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рдПрд╕рдПрдордПрд╕ рд╕реНрдЯреЛрд░реЗрдЬ рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВред рдФрд░ рдпрджрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕рдВрдЦреНрдпрд╛ рдЗрд╕ рдЖрдХрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╣рдо рдкреБрд░рд╛рдиреЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЙрд╕ рдЖрджреЗрд╢ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВред рдпрд╛рдиреА рдЬреЛ рд╕рдВрджреЗрд╢ рдкрд╣рд▓реЗ рдорд┐рд▓реЗ рдереЗ, рд╡реЗ рдкрд╣рд▓реЗ рдбрд┐рд▓реАрдЯ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдХреНрд▓рд╛рд╕рд┐рдХ рд▓рд╛рдЗрдирдЕрдкред

рдЗрди рдЗрд╢рд╛рд░реЛрдВ рдХреЗ рдмрд╛рдж, рд╣рдо рд╕рдВрджреЗрд╢ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрд░реЛрдз рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдмрд╛рдЗрдВрдб () рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдбреЗрдЯрд╛ рдХреЛ рдЙрддреНрдкрдиреНрди рдЕрдиреБрд░реЛрдз рдореЗрдВ рдмрд╛рдВрдзрддреЗ рд╣реИрдВред рдЕрдВрдд рдореЗрдВ рд╣рдо рдЕрдиреБрд░реЛрдз рдкрд░ рдЕрдорд▓ рдХрд░рддреЗ рд╣реИрдВред

рдкрд░реАрдХреНрд╖рдг рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ


рд▓рдЧрддрд╛ рд╣реИ рд╕рдм рдХреБрдЫ рддреИрдпрд╛рд░ рд╣реИред рдПрдХ рдЫреЛрдЯрд╛ рдХрджрдо рд░рд╣рддрд╛ рд╣реИред рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдХреИрд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ? рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреБрдЫ рдмрдЪрд╛рддрд╛ рд╣реИ? рдореИрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдЯ-рдкрд░реАрдХреНрд╖рдг рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдмрдбрд╝реЗ рд╡рд┐рд╖рдп рдХрд╛ рд╡рд┐рд╖рдп рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдПрдореБрд▓реЗрдЯрд░ рдкрд░ рдПрд╕рдПрдордПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдмрддрд╛рддрд╛ рд╣реВрдВред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рднреА рдЯреЗрд▓рдиреЗрдЯ рдХреНрд▓рд╛рдЗрдВрдЯ рдЦреЛрд▓реЗрдВред рдореЗрд░реЗ рдореВрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ 7 рдореЗрдВ рдпрд╛ рддреЛ рдкреЛрдЯреАрди рдпрд╛ рдорд╛рдирдХ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ (рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)ред рд╣рдо рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ, рдФрд░ рдкреЛрд░реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо рдПрдореБрд▓реЗрдЯрд░ рдХреЗ рд╕рд╛рде рд╡рд┐рдВрдбреЛ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдкреЛрд░реНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ 5554 рд╣реИред рдпрд╣ рдмрд┐рдирд╛ рдХрд╣реЗ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрд╕реА рд╕рдордп рдПрдореБрд▓реЗрдЯрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реЛрдЧрд╛ред рдЧреНрд░реАрдЯрд┐рдВрдЧ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдХрдорд╛рдВрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдмрд╣реБрдд рд╕рд╛рд░реА рдЯреАрдореЗрдВ рд╣реИрдВред рд╣реЗрд▓реНрдк рдХрдорд╛рдВрдб рдЯрд╛рдЗрдк рдХрд░рдХреЗ рдЙрдирдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЗрди рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдХрдИ рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдлреЛрди рдХреЗ рд╕рд╛рде рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдХреЗрд╡рд▓ рдПрд╕рдПрдордПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдкреНрд░рд╛рдкреНрддрд┐ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред

рдЗрд╕реЗ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдХрдорд╛рдВрдб рдЯрд╛рдЗрдк рдХрд░реЗрдВ
 sms send _ _ 

рдЬрд╣рд╛рдБ phone_number рдЕрдВрдХреЛрдВ рдХрд╛ рдХреЛрдИ рдЕрдиреБрдХреНрд░рдо рд╣реИ, рдЬреЛ "+" рдЪрд┐рд╣реНрди рд╕реЗ рд╢реБрд░реВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ message_text рд╕рдВрджреЗрд╢ рд╕рд╛рдордЧреНрд░реА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдФрд░ рдЕрдиреНрдп рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рд╣рдо рдЖрдорддреМрд░ рдкрд░ рдПрд╕рдПрдордПрд╕ рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред

рд╕рдлрд▓ рд╕рд┐рдореБрд▓реЗрд╢рди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдЯреЗрд▓рдиреЗрдЯ рдХреНрд▓рд╛рдЗрдВрдЯ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ "рдУрдХреЗ" рд╕рдВрджреЗрд╢ рджреЗрдЦреЗрдВрдЧреЗред

рдирд┐рд╖реНрдХрд░реНрд╖


рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рдореБрдЦреНрдп рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдгреЛрдВ рдХреЛ рдкреНрд░рдХрдЯ рдХрд░рдиреЗ, рдХрдорд┐рдпреЛрдВ рдФрд░ Android рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреА рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг Google Play рд╕реЗ рдореБрдлреНрдд рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ рдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рд╣реИ, рддреЛ рдЖрдк рдЯрд┐рдкреНрдкрдгреА рдпрд╛ рдирд┐рдЬреА рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦреЗрдВрдЧреЗ рддреЛ рдореИрдВ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред рд░рдЪрдирд╛рддреНрдордХ рдЖрд▓реЛрдЪрдирд╛ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдкреБрдирд╢реНрдЪ: рдореИрдВ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдирд╣реАрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдлреА рдорд╛рдБрдЧрддрд╛ рд╣реВрдБред рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░реА рдирд┐рдХрд▓рд╛, рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рд╡рд░реНрдгрд┐рдд рдореЗрдВ рд╕реЗ рдХрд┐рд╕реЗ рдЧреНрд░рд╛рдлрд┐рдХ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдореБрдЭрд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рд╖рдп рдХреЛ рдареАрдХ рдХрд░реВрдВрдЧрд╛ред

Source: https://habr.com/ru/post/In146453/


All Articles