рд╣рд╛рдп, рд╣реЗрдмреНрд░рд╛ рдкреНрд░реЗрдорд┐рдпреЛрдВ! рдПрдХ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╕рдВрдпреЛрдЧ рд╕реЗ, рдЕрдЧрд╕реНрдд 2018 рдореЗрдВ, рдореИрдВ рдЕрдкрдиреЗ рдХреЙрдорд░реЗрдб (
kirillskiy ) рдХреЗ рд╕рд╛рде рдПрдХ рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛ рдЬреЛ рдЕрдкрдиреЗ рд╣рд┐рдд рдореЗрдВ рдЕрджреНрднреБрдд рдереАред рдФрд░ рдЗрд╕рд▓рд┐рдП, рджрд┐рди рдХреЗ рджреМрд░рд╛рди рд╣рдо рд╕рд╛рдзрд╛рд░рдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдереЗ, рдФрд░ рд░рд╛рдд рдореЗрдВ рд╣рдо рдлрд┐рд░ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдереЗ рдЬреЛ рдЕрдкрдиреЗ рдЕрдВрдЧреЛрдВ рдХреА рд╕реАрдорд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдВрджреЛрд▓рдиреЛрдВ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рдореБрджреНрджреЛрдВ рд╕реЗ рдЬреВрдЭ рд░рд╣реЗ рдереЗ, рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрд╡рд╕реНрде рд▓реЛрдЧ рднреА рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рдЗрд╕реА рддрд░рд╣ рдХреА рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рдереЗред
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ , рд╕рд┐рд░рд┐рд▓ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдКрдВрдЧрд╛ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рд╕реНрдкрд░реНрд╢ рдХрд░реВрдВрдЧрд╛ред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЖрдкрдХреЛ рдкреВрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рд╣рдо рдХреНрдпрд╛ рд▓реЗрдХрд░ рдЖрдП рд╣реИрдВ рдФрд░ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:
1)
EMG (рдЗрд▓реЗрдХреНрдЯреНрд░реЛрдореЛрдЧреНрд░рд╛рдлреА - рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдХреА рд╡рд┐рджреНрдпреБрдд рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдирд╛) рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ (рдУрд╣, рд╣рд╛рдБ, рдмрд╣реБрдд рдбреЗрдЯрд╛ рд╣реЛрдЧрд╛)ред рдкрд╣рд▓реА рдмрд╛рд░ рдпрд╣ рд╡рд┐рдзрд┐ 1907 рдореЗрдВ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рдереА, рдЗрд╕рд▓рд┐рдП рд╣рдо рдкреАрдЯрд╛ рдЯреНрд░реИрдХ рдХреЗ рд╕рд╛рде рдЪрд▓реЗред
2) рд╣рдореЗрдВ рдПрдХ 8-рдЪреИрдирд▓ рдИрдПрдордЬреА рд╕реЗрдВрд╕рд░ рдорд┐рд▓рд╛ рдЬреЛ рдмреНрд▓реВрдЯреВрде рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕рдХреА рдЕрдкрдиреА рдПрдкреАрдЖрдИ рднреА рд╣реИ, рдЬреЛ рдЕрдВрдд рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдмреЗрдХрд╛рд░ рд╣реЛ рдЧрдИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЦреБрдж рдХреЛ рдмреАрдЯреА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдзрдиреНрдпрд╡рд╛рдж рдХрдо рд╕реЗ рдХрдо рд╣рдордиреЗ рдПрдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд▓рд┐рдЦрд╛ рдерд╛ред
3) рд╣рдордиреЗ рддрдп рдХрд┐рдпрд╛ рдХрд┐ рд╕рдм рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛:
- рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдореЛрдбред рд╣рдо рдкреНрд░рдХреЛрд╖реНрда рдкрд░ рд╕реЗрдВрд╕рд░ рдкрд╣рдирддреЗ рд╣реИрдВ, рдЙрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдВрджреЛрд▓рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ рдЬрд┐рд╕реЗ рд╣рдо рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ... "рдмреНрд░рд╢ рдХреЛ рдЭреБрдХрдирд╛ред" рдФрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╢реБрд░реВ рдХрд░реЗрдВ (рдЖрдВрджреЛрд▓рди рдХреЛ 12 рдмрд╛рд░ рджреЛрд╣рд░рд╛рдПрдВ)ред рд╣рдо рдЗрд╕ рд╕рдордп рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬреЗрдВрдЧреЗ рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬреЗрдВрдЧреЗ, рдЬрд╣рд╛рдВ рд╣рдо рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░реЗрдВрдЧреЗ (рд╢рд╛рдВрддрд┐ рд╕реЗ, рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрддрд╛рдКрдВрдЧрд╛)
- рдбрд╛рдпрд░реЗрдХреНрдЯ рдореЛрд╢рди рд░рд┐рдХреЙрдЧреНрдирд┐рд╢рди рдореЛрдбред рдЖрдВрджреЛрд▓рди рдХреЗ рджреМрд░рд╛рди рд▓рд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреА рддреБрд▓рдирд╛ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рд╛рдкреНрдд рдореЙрдбрд▓ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИред рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ "BENDING BRUSH" рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред
- рдбреНрд░рд╛рдЗрд╡рд┐рдВрдЧ рдореЛрдбред рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдВрджреЛрд▓рди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдХреБрдЫ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░рд╕рд┐рджреНрдз рдбреЗрдирд┐рд╢ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рдбрд┐рдЬрд╛рдЗрдирд░ (рдкреАрдкреАрд╕реА, рдХрд┐рддрдирд╛ рдорд╣рдВрдЧрд╛) рд╕реЗ рд░рд╕реЛрдИ рдореЗрдВ рдЗрдХрдЯреНрдареЗ рд╣реБрдП рдПрдХ рдЬреЛрдбрд╝рддреЛрдбрд╝ред
4) Android рдЖрдЗрдЯрдоред рдореИрдВ рдПрдХ Android рдбреЗрд╡рд▓рдкрд░ рд╣реВрдВ - рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░рдирд╛ рдПрдХ рдкрд╛рдк рдерд╛ред Android рдпрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рд╕рд╛рде рд╣реИ:
- рд╕рднреА рдЙрдкрд▓рдмреНрдз рдмреАрдЯреА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд╛рддрд╛ рд╣реИ
- рд╕реЗрдВрд╕рд░ рд╕реЗ рдЬреБрдбрд╝рддрд╛ рд╣реИ
- рд╕реЗрдВрд╕рд░ (8 рдЪреИрдирд▓реЛрдВ, рдЖрд╡реГрддреНрддрд┐ 200 рд╣рд░реНрдЯреНрдЬ) рд╕реЗ рд▓рд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЧреНрд░рд╛рдл рдЦреАрдВрдЪрддрд╛ рд╣реИред 8 рд╕реБрдВрджрд░, рд░рдВрдЧреАрди рдШрдЯрддрд╛ред
- рдФрдЬрд╛рд░ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдореЛрдб (рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдЖрдВрджреЛрд▓рди рдХреЗ рдкреНрд░рдХрд╛рд░, рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдкреНрд░рд╛рд░рдВрдн рдмрдЯрди, рдбреЗрдЯрд╛ рднреЗрдЬреЗрдВ рдмрдЯрди рдХрд╛ рдЪрдпрди)
- рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рдХреЛ рдбреЗрдЯрд╛ рднреЗрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП
- рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкреАрдЖрдИ 3 рдмреА рдХреЗ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдФрд░ рдмрд╛рддрдЪреАрдд рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдореЛрдЯрд░реНрд╕ рдХреЛ рдЯрд╛рдВрдХрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЧрддрд┐ рдореЗрдВ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
5) рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкреАрдЖрдИ 3 рдмреАред рдпрд╣ рд░рд╛рд╕реНрдкрдмреЗрд░реА рдерд╛ рдЬрд┐рд╕реЗ рд╣рдордиреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдерд┐рдВрдЧреНрд╕ рдкрд░ рд░рдЦрд╛ рдерд╛, рдФрд░ рдлрд┐рд░ рд╣рдордиреЗ рдЙрд╕ рдкрд░ рдмреАрдЯреА рд╕рд░реНрд╡рд░ рдЙрдард╛рдпрд╛, рдЬреЛ рдПрдХ рдПрдВрдбреНрд░реЙрдЗрдб рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдореЛрдЯрд░реНрд╕ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд▓реЗрдЧреЛ рд╕реЗ рдПрдХ рд╕реБрдкрд░-рдкрдВрдЬрд╛ рдЧрддрд┐ рдореЗрдВ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИред
6) рд╕рд░реНрд╡рд░ред рдпрд╣ рдбреЙрдХрдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬрд╛ рдЧрдпрд╛ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдиреНрдпреВрд░рд▓ рдиреЗрдЯрд╡рд░реНрдХ рд╕рд┐рдЦрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдореЙрдбрд▓ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рднрд╛рдЧ рд╕рдВрдЦреНрдпрд╛ 1. Androidред рдЗрд╕ рдмрд╛рд░ рд╣рдо рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╣реБрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдЬрдм рддрдХ рдХрд┐ рдбреЗрдЯрд╛ рд╕рд░реНрд╡рд░ рдкрд░ рдирд╣реАрдВ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИредрдЗрд╕реЗ NUKLEOS (https://github.com/cyber-punk-me/nukleos) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ
рдвреЗрд░:
- рдХреЛрдЯрд▓рд┐рди
- рдПрдорд╡реАрдкреА
- рдбреИрдЧрд░ 2
- рд░реЗрдЯреНрд░реЛрдлрд┐рдЯ 2
- RxKotlin, RxAndroid
рд░рд╛рд╕реНрдкрдмреЗрд░реА рдХреЗ рд▓рд┐рдП:
-рдПрдВрдбреНрд░реЙрдпрдб рдерд┐рдВрдЧреНрд╕
рдХрд╛рдо рдХреЗ рджреМрд░рд╛рди, рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдирд╣реАрдВ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЖрдЦрд┐рд░рдХрд╛рд░ рдореБрдЭреЗ рдПрдХ рдкреБрд░рд╛рдиреЗ рдЦрд┐рд▓реМрдиреЗ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХрд╛ рдореМрдХрд╛ рдорд┐рд▓рд╛ рдЬрд┐рд╕реЗ рдПрдорд╡реАрдкреА рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЖрд╡реЗрджрди рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рдПрдХ рддрд▓ рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╢реИрд▓реА рдФрд░ 4 рдЯреБрдХрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ:
рдкрд╣рд▓рд╛
"рд╕рднреА рдЙрдкрд▓рдмреНрдз рдмреАрдЯреА рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА" рд╣реИрд╣рдордиреЗ 8-рдЪреИрдирд▓ рдмреАрдЯреА рд╕реЗрдВрд╕рд░ рдЪреБрдирд╛, рдЬрд┐рд╕рдореЗрдВ рдмреАрдЯреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдПрдкреАрдЖрдИ рдерд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдПрдкреА рдмрд┐рд▓реНрдХреБрд▓ рдмреЗрдХрд╛рд░ рд╣реЛ рдЧрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рддреБрд░рдВрдд 6 (рдЬреИрд╕реЗ) рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдВрджреЛрд▓рди рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдорд╛рдиреНрдпрддрд╛ рд╕рдЯреАрдХрддрд╛ 80% рдереА - рдФрд░ рдпрд╣ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рдерд╛ред рдЦреИрд░, рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдмрд╛рдпреЛрдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХ рдХреНрд╖рдорддрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдореВрд▓реНрдп рдЬреЛ рдПрдХ рдорд╛рдВрд╕рдкреЗрд╢реА рдлрд╛рдЗрдмрд░ рдХреЗ рдЙрддреНрддреЗрдЬрдирд╛ рдкрд░ рдорд╛рдирд╡ рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВред рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдЗрд╕ рд╕реЗрдВрд╕рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдиреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╡рд░рдг рдЫреЛрдбрд╝ рджрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЗрддрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЦреЛрджрдирд╛ рдкрдбрд╝рд╛ред рдореИрдВ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдореЗрдВ рдирдВрдЧреЗ рдмреАрдЯреА рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЕрдЧрд░ рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
class BluetoothConnector(val context: Context) { private val mBTLowEnergyScanner by lazy { (context.getSystemService(Activity.BLUETOOTH_SERVICE) as BluetoothManager) .adapter.bluetoothLeScanner } private var mBluetoothScanCallback: BluetoothScanCallback? = null
рдЖрд░рдПрдХреНрд╕ рдореЗрдВ рдорд╛рдирдХ рдмреАрдЯреА рд╕реЗрд╡рд╛ рдХреЛ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рд▓рдкреЗрдЯреЗрдВ рдФрд░ рдХрдо рджрд░реНрдж рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред
рдЕрдЧрд▓рд╛, рд╕реНрдХреИрди рдХреЛ рдЪрд▓рд╛рдПрдВ, рдФрд░ рд╕рджрд╕реНрдпрддрд╛ рдкрд░ рдЖрд░рдПрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╣рдо рд╕рднреА рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдмрдирд╛рддреЗ рд╣реИрдВ рдЙрдиреНрд╣реЗрдВ рд░реАрд╕рд╛рдпрдХрд▓рд░ рд╡реНрдпреВ рдореЗрдВ рднрд░рдХрд░:
mFindSubscription = mFindFlowable ?.subscribeOn(Schedulers.io()) ?.observeOn(AndroidSchedulers.mainThread()) ?.subscribe({ if (it !in mBluetoothStuffManager.foundBTDevicesList) { addSensorToList(SensorStuff(it.name, it.address)) mBluetoothStuffManager.foundBTDevicesList.add(it) } }, { hideFindLoader() showFindError() if (mBluetoothStuffManager.foundBTDevicesList.isEmpty()) { showEmptyListText() } }, { hideFindLoader() showFindSuccess() if (mBluetoothStuffManager.foundBTDevicesList.isEmpty()) { showEmptyListText() } })
рдХрд┐рд╕реА рдПрдХ рдЙрдкрдХрд░рдг рдХрд╛ рдЪрдпрди рдХрд░рдирд╛, рдЙрд╕рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдФрд░ рдЕрдЧрд▓реА рд╕реНрдХреНрд░реАрди рдкрд░ рдЬрд╛рдирд╛:
"рд╕реЗрдВрд╕рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕"рд╣рдо рдЗрд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрдВрд╕рд░ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреНрд░реАрдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рддреИрдпрд╛рд░ рдХрд┐рдП рд╣реИрдВред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╕реЗрдВрд╕рд░ рдирд┐рд░реНрдорд╛рддрд╛ рджреНрд╡рд╛рд░рд╛ рдЗрд╕ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
object CommandList {
рджрд░реНрдж рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рднреА рдЖрд░рдПрдХреНрд╕ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рд▓рдкреЗрдЯрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕реЗрдВрд╕рд░ рдиреЗ рдмрд╛рдЗрдЯ рдПрд░реЗ рдХреЛ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдХрдирд╡рд░реНрдЯрд░ рдХреЛ рдХрд╛рдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдерд╛, рд╕реЗрдВрд╕рд░ рдХреА рдЖрд╡реГрддреНрддрд┐ 200 рд╣рд░реНрдЯреНрдЬ рдереА ... рдЕрдЧрд░ рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ (рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ, рдпрд╛ рдХреЛрдб рдХреЛ рджреЗрдЦреЛ), рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рд╣рдо рдЗрд╕ рддрд░рд╣ рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ:
1 - рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдВрд╕рд░ рдХреЗ рдШрдЯрддрд╛ рдХреЛ рдЦреАрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рд╕рднреА рдбреЗрдЯрд╛ рдХреЛ ABSOLUTELY рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдордЭрджрд╛рд░реА рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореЛрдмрд╛рдЗрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдВрд╕рд░ рдкрд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 200 рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЖрдВрдЦ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕рдм рдХреБрдЫ рдирд╣реАрдВ рд▓реЗрдВрдЧреЗред
2 - рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдкреВрд░реА рдорд╛рддреНрд░рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЕрдЧрд░ рдпрд╣ рдПрдХ рд╕реАрдЦрдиреЗ рдпрд╛ рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред
рдЗрди рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП, RX рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╕рднреА рдлрд┐рд▓реНрдЯрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓ рд╣реИред
рдЪрд╛рд░реНрдЯ рдмрдирд╛рдиреЗ рдкрдбрд╝рддреЗ рдереЗред рдХреМрди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ - рд╡реНрдпреВ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ PowerfullChartsView рдХреЛ рджреЗрдЦреЗрдВред
рдФрд░ рдЕрдм рдХреБрдЫ рд╡реАрдбрд┐рдпреЛ:
рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╕рд┐рд░рд┐рд▓ рдкреВрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╡реАрдбрд┐рдпреЛ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореЙрдбрд▓ рд╕рд░реНрд╡рд░ рдкрд░ рд╣реИред рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╣реЛрдЧрд╛, рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХрд╛рдлреА рддреЗрдЬ рдХрд░реЗрдЧрд╛)
рдХреМрди рд╕реЗ рдкрд╣рд▓реВ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИрдВ, рдХреМрди рд╕реЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдПрдВред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдЦреБрд▓реЗ рд╣реИрдВред
рд╕рдВрдкреВрд░реНрдг рдЧрд┐рддреБрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдпрд╣рд╛рдВ рд╣реИ