рдкрд░рд┐рдЪрдп рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реИ: рдореИрдВ рд╕реНрдерд╛рдиреАрдп рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ, рдЪреИрдирд▓ рдФрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рд╕рд╛рде Android рдХреЗ рд▓рд┐рдП YouTube рдСрдирд▓рд╛рдЗрди рдкреНрд▓реЗрдпрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдкрд░рд┐рдЪрдп рд╡рд┐рд╕реНрддреГрдд рд╣реИ
рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ, рдореБрдЭреЗ рдЕрджреНрднреБрдд рдЪреИрдирд▓ рд╡реНрд╣рд┐рдЯреЗрд▓рд┐рд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓реЗрдЦрдХ рдХреЗ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдФрд░ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдкреНрд░рддрд┐ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рд░рд╡реИрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛: рдореИрдВ рдЕрдкрдиреЗ рдмрдЪреНрдЪреЗ рдХреЛ рд╕рдордп-рд╕рдордп рдкрд░ рдХрд╛рд░реНрдЯреВрди рдХреЗ рд╕рд╛рде рдПрдХ рдЯреИрдмрд▓реЗрдЯ рдпрд╛ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреБрд╢ рдирд╣реАрдВ рд╣реВрдВ, рдЬрд╣рд╛рдВ 2-3 рдХреНрд▓рд┐рдХ рдореЗрдВ рдмрдЪреНрдЪреЗ рдХреЛ рдорд╛рдирдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓рддреА рд╣реИ - YouTube рдХреНрд▓рд╛рдЗрдВрдЯред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЪреИрдирд▓ рд╡реНрд╣рд┐рдЯреЗрд▓рд┐рд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдиреНрд╣реЛрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдЕрднрд┐рдпреБрдХреНрдд рдХреА рдЦреЛрдЬ рдХреА, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдШрд╛рддрдХ рджреЛрд╖ - NIH (рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдЙрдирдХреЗ рдмреЗрдЯреЗ) рдХреЛ рдЗрд╕рдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд▓рдЧрд╛, рдЦрд╛рд╕рдХрд░ рдпреВрдЯреНрдпреВрдм рдХрд┐рдбреНрд╕ рдкреНрд▓реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрджрдд рдХреЗ рдмрд╛рджред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдореИрдВ рдЕрдкрдирд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдкрдХреНрд╡ рд╣реЛ рдЧрдпрд╛ред рдХреБрдЫ рд╕рдордп рдмрд╛рдж, рдкрд╣рд▓реА рд░рд┐рд▓реАрдЬрд╝ рдкрд░ рдЯреИрдЧ рд▓рдЧрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛ред
рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:
- рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдЪреИрдирд▓ рдФрд░ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЬреЛрдбрд╝реЗрдВ - рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдФрд░ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
- рдпрджрд┐ рдЖрдкрдХреЛ рдЙрдирдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЗ рдЕрдВрджрд░ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡реАрдбрд┐рдпреЛ рдмрдВрдж рдХрд░реЗрдВ
- рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреА рд╕реВрдЪреА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд░реВрдк рд╕реЗ рдХреЗрд╡рд▓ рдЪреИрдирд▓реЛрдВ рдФрд░ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ рдЬреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рдЬреЛрдбрд╝реА рдЬрд╛рддреА рд╣реИред
рд╕реНрд░реЛрдд рдЦреБрд▓реЗ рд╣реИрдВ, GPLv3 рд▓рд╛рдЗрд╕реЗрдВрд╕: https://github.com/sadr0b0t/yashlang/
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЕрд╡рд▓реЛрдХрди рдХрд░реЗрдВ, рд╕рд╛рде рд╣реА Google API рдФрд░ рд╡реЗрдм рд░реИрдкрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЕрдкрдиреЗ Android рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ YouTube рд╡реАрдбрд┐рдпреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдгред
рдореБрдЦреНрдп рд╕реНрдХреНрд░реАрди рдкрд░ рдФрд░ рдЦрд┐рд▓рд╛рдбрд╝реА рд╕реНрдХреНрд░реАрди рдкрд░: рдЧреИрд░-рдЖрдпрд╛рдореА рдЪреИрдирд▓реЛрдВ рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ






рддрддреНрдХрд╛рд▓ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдЦреЛрдЬ
=> 
рдирдпрд╛ рдЪреИрдирд▓ рдпрд╛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЬреЛрдбрд╝реЗрдВ


рдСрдирд▓рд╛рдЗрди рдирд╛рдо рд╕реЗ рдЦреЛрдЬреЗрдВ рдпрд╛ рдПрдХ рдЬреНрдЮрд╛рдд рдкрддрд╛ рдбрд╛рд▓реЗрдВред рдЪреИрдирд▓ рдпрд╛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреНрд▓рд┐рдк рдХреА рд╕реВрдЪреА рдХреЛ рд╕реНрдерд╛рдиреАрдп рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрдЗрдХрди рдХреИрд╢ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
рдбрд╛рдпрдирд╛рдорд┐рдХ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ - рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдЦреЗрд▓реЗрдВ
=> 


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

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

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

рдкрд╕рдВрджреАрджрд╛ рд╡реАрдбрд┐рдпреЛ рдФрд░ рдЗрддрд┐рд╣рд╛рд╕ рджреЗрдЦреЗрдВ

рдЦрд┐рд▓рд╛рдбрд╝реА рдХреА рд╕реНрдХреНрд░реАрди рдкрд░ рдкрд╕рдВрджреАрджрд╛ рд╡реАрдбрд┐рдпреЛ рдКрдкрд░реА рджрд╛рд╣рд┐рдиреЗ рдХреЛрдиреЗ рдореЗрдВ рдПрдХ рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рд╣реИрдВред
рд╕реНрдХреНрд░реАрди рд╢реАрд░реНрд╖рдХ рдореЗрдВ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдФрд░ рджреАрд░реНрдШрд╛рдУрдВ рдФрд░ рд╕реВрдЪрд┐рдпреЛрдВ рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ

рджреЗрдЦрдиреЗ рдХреЗ рд╕реНрдХреНрд░реАрди рдпрд╛ рдХрд┐рд╕реА рд╕реВрдЪреА рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдпрд╛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЗ рдирд╛рдо рдпрд╛ рдкрддреЗ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред
рддреНрд╡рд░рд┐рдд рд╢реБрд░реБрдЖрдд - рдЕрдиреБрд╢рдВрд╕рд┐рдд рдЪреИрдирд▓ рдФрд░ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдЬреЛрдбрд╝реЗрдВ
=> 
рдЖрд╡реЗрджрди рддреБрд░рдВрдд рдКрдкрд░ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреА рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛ред
рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЪреИрдирд▓ рдФрд░ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдмрдВрдж рдпрд╛ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдерд╛рдкрдирд╛
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреЗрдЬ: https://github.com/sadr0b0t/yashlang/
рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ: https://github.com/sadr0b0t/yashlang/blob/master/README.en.md
рд░рд┐рд▓реАрдЬрд╝: https://github.com/sadr0b0t/yashlang/releases
рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдПрдХ рд╣реА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддреЛрдВ рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдПрдкреАрдХреЗ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣рд╕реНрддрд╛рдХреНрд╖рд░реЛрдВ рдХреЗ рдХрд╛рд░рдг рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдХрд┐рд╕реА рдирдП рд╕реНрд░реЛрдд рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рдкрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ - рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреИрд╢ рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд┐рдВрдЧ рдЗрддрд┐рд╣рд╛рд╕ (рдпрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдБ рдХрд┐ рдпреЗ рдХреИрд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдбреЗрдЯрд╛)ред
рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдг
Google / YouTube рдЦрд╛рддреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреЗрд╡рд▓ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ:
рдореБрдХреНрдд рд╕реНрд░реЛрдд, рдореБрдлреНрдд GPLv3 рд▓рд╛рдЗрд╕реЗрдВрд╕ред
рдкреНрд░рд╢реНрди: рдХреНрдпрд╛ рд▓реЗрдЦрдХреЛрдВ рд╕реЗ рдЕрдиреБрдорддрд┐ (рдпрд╛ рд╕реНрдкрд╖реНрдЯ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗ рдмрд┐рдирд╛) рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдХрд╛рдиреВрдиреА рд╣реИ? Google Google рд╕реЗ рдРрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдЬреЛ рдЕрдкрдиреЗ API рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдкрдиреА рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдордЭреМрддреЗ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддреЗ рд╣реИрдВред
рдЙрддреНрддрд░: рдмреЗрд╢рдХ, рдХрд╛рдиреВрдиреА рд░реВрдк рд╕реЗ, рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛: рдЕрдореЗрд░рд┐рдХреА рдЕрджрд╛рд▓рдд рдиреЗ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реИрдз рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдереЛрдкрдиреЗ рд╕реЗ рдордирд╛ рдХрд┐рдпрд╛ рд╣реИ , рд▓реЗрдХрд┐рди рдЧреБрд▓ рдХреА рдЕрд▓рдЧ рд░рд╛рдп рд╣реЛ рд╕рдХрддреА рд╣реИ, рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдореЗрд░рд┐рдХреА рдЕрджрд╛рд▓рдд рдЬрд╛рдиреЗ рдХреА рдХреЛрдИ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред
рдХреБрдЫ рдХреЛрдб
NewPipeExtractor рд▓рд╛рдЗрдмреНрд░реЗрд░реА, NewPipe рдкреНрд▓реЗрдпрд░ рдХреА рдПрдХ рд╕рд╣рд╛рдпрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЪреИрдирд▓ рдпрд╛ рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд┐рдк рдХреА рд╕реВрдЪреА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ, рдПрдХ рдЬреНрдЮрд╛рдд рд╡реАрдбрд┐рдпреЛ (рд╡реАрдбрд┐рдпреЛ рдХреЗ рд╡реЗрдм рдкреЗрдЬ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рд╡реАрдбрд┐рдпреЛ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ, рд╡реАрдбрд┐рдпреЛ рдЖрдЗрдХрди рдХрд╛ рдкрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдкрддрд╛ рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред
рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдХреЛрдб рдереЛрдбрд╝рд╛ рдмреЛрдЭрд┐рд▓ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рдпрд╣рд╛рдВ рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдХреЛрдИ рднреА рдЗрдЪреНрдЫреБрдХ рд╣реИ - рд╕реНрд░реЛрдд рдХреЛ рджреЗрдЦреЗрдВ, рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ ContentLoader рд╡рд░реНрдЧ рд╣реИред
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреГрд╖реНрда рдХреЗ рдкрддреЗ рдкрд░ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдкрддрд╛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдкреНрд▓реЗрдпрд░ рдореЗрдВ рдЪрд▓рд╛рдПрдВред
рд╕реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
app / build.gradle
dependencies { ... // NewPipe: youtube parser // https://github.com/TeamNewPipe/NewPipeExtractor implementation "com.github.TeamNewPipe:NewPipeExtractor:v0.17.4" ... }
рдпрд╣ рдЙрддреНрд╕реБрдХ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рдмрд╛рдж рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЙрджрд╛рд╣рд░рдг рд▓рд╛рдкрддрд╛ рдбрд╛рдЙрдирд▓реЛрдбрд░ рд╡рд░реНрдЧ рдкрд░ рд╢рдкрде рд▓реЗрдВрдЧреЗред рдпрд╣ рд╕реНрд╡рдд: рдкрд░реАрдХреНрд╖рдг рдХреА рд╕реВрдЪреА рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ NewPipeExtractor / extractor / src / test / java / org / schabi / newpipe / Downloader.java - рд╕рдВрд╕реНрдХрд░рдг 0.17.4 рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдпрд╣ рд╣реИ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)ред
YouTube рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╡реАрдбрд┐рдпреЛ рдкреЗрдЬ рдХреЗ рдкрддреЗ рдкрд░ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдкрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
рдРрдк / src / main / java / su / sadrobot / yashlang / рдХрдВрдЯреНрд░реЛрд▓рд░ / ContentLoader.java
public String extractYtStreamUrl(final String ytVidUrl) throws ExtractionException, IOException {
YtVidUrl рдХрд╛ рд╡реАрдбрд┐рдпреЛ рдкрддрд╛ YouTube рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдХрд┐рд╕реА рднреА рд╡реАрдбрд┐рдпреЛ рдХреЗ рдкреЗрдЬ рдХрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкрддрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП https://www.youtube.com/watch?v=pd2RlatmNRk
рдЦрд┐рд▓рд╛рдбрд╝реА Google рд╕реЗ рд╣реА ExoPlayer рд╣реЛрдЧрд╛ред рдпрд╣ YouTube рдкрд░ рдПрдХ рд╡реЗрдм рдЖрд╡рд░рдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рд╡реАрдбрд┐рдпреЛ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдореНрдмреЗрдбреЗрдб рдЦрд┐рд▓рд╛рдбрд╝реА рд╣реИ, рдЬреЛ рдХрд╛рдлреА рд▓рдЪреАрд▓рд╛ рдФрд░ рдЕрдиреБрдХреВрд▓рди рдпреЛрдЧреНрдп рд╣реИред рдпрджрд┐ рдЖрдк рд╕рд╣реА рдкрддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ YouTube рд╕реЗ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВред рд╣рдореЗрдВ рд╕рд┐рд░реНрдл рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдкрддрд╛ рдорд┐рд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдЗрд╕реЗ рдкреНрд▓реЗрдпрд░ рдХреЛ рдХреИрд╕реЗ рднреЗрдЬрд╛ рдЬрд╛рдПред
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдРрдк / рдмрд┐рд▓реНрдб.рдЧреНрд░реЗрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ:
dependencies { ... // google Exoplayer // https://github.com/google/ExoPlayer // https://exoplayer.dev/ implementation 'com.google.android.exoplayer:exoplayer:2.10.8' ... }
рд╣рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдХреНрд░реАрди рдкрд░ рдкреНрд▓реЗрдпрд░ рдШрдЯрдХ рд░рдЦрдиреЗ рдХреА рд╕рднреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ (рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдпрд╛ рдХреЛрдб рдореЗрдВ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ), рд╣рдо рдХреЗрд╡рд▓ рдЙрдкрд░реЛрдХреНрдд рдкрддреЗ рдкрд░ рдЦрд┐рд▓рд╛рдбрд╝реА рд╕реЗ YouTube рдореЗрдВ рд╡реАрдбрд┐рдпреЛ рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗ:
рдРрдк / src / main / java / su / sadrobot / yashlang / WatchVideoActivity.java
private void playVideoStream(final String streamUrl, final long seekTo) { if (streamUrl == null) {
рдЬреНрдЮрд╛рдд рдореБрджреНрджреЗ
- рдЖрдпреБ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рд╡рд╛рд▓реЗ рд╡реАрдбрд┐рдпреЛ рдирд╣реАрдВ рдЪрд▓рд╛рдПрдВрдЧреЗ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдХреЗ Google / YouTube рдЦрд╛рддреЗ рдореЗрдВ рд▓реЙрдЧрд┐рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдЗрд▓реНрдпрд╛ рдореБрд░реЛрдореЗрдЯреНрд╕, рдореЙрд╕рдлрд┐рд▓реНрдо рдлрд╝рд┐рд▓реНрдо рдХрдВрд╕рд░реНрди , рд░реБрд╕реНрд▓рд╛рди рдФрд░ рд▓реНрдпреВрдбрдорд┐рд▓рд╛ рдлрд╝рд┐рд▓реНрдо рд╕реАрд░реАрдЬрд╝ 1 / рд░реБрд╕реНрд▓рд╛рди рдФрд░ рд▓реНрдпреВрдбрдорд┐рд▓рд╛ рдлрд╝рд┐рд▓реНрдо 1, рдореЙрд╕рдлрд╝рд┐рд▓реНрдо рдлрд╝рд┐рд▓реНрдо рдХрдВрд╕рд░реНрди
рдЯрд┐рдк: рдРрд╕реЗ рд╡реАрдбрд┐рдпреЛ рдХреЛ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдпрд╛ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓реЗрдЦрдХ рд╕реЗ рдЧрд▓рддреА рд╕реЗ рд▓рдЧрд╛рдП рдЧрдП рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВред
- рдХреБрдЫ рдкреНрд░рд╕рд╛рд░рдг рд╡реАрдбрд┐рдпреЛ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рд╢реВрдиреНрдп рд▓рдВрдмрд╛рдИ рджреЗрддреА рд╣реИ, рд╡реЗ рдирд╣реАрдВ рдЦреЗрд▓реЗрдВрдЧреЗ (рдРрд╕реЗ рд╡реАрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП, рд╕реВрдЪрд┐рдпреЛрдВ рдФрд░ рдЧреИрд▓рд░реА рдореЗрдВ рдЕрд╡рдзрд┐ рдХреЛ "[рдбреНрдпреВрд░ рдЕрдирдбреЗрдл]" рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдПрдХ рдорд┐рдирдЯ рд░реБрдХреЛ! рд╕рднреА рдореБрджреНрджреЗ рд╕реЛрдпреВрдЬрд╝реНрдореБрд▓реНрдлрд┐рд▓реНрдо рдПрдЪрдбреА (рдмрдЪреНрдЪреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдЯреВрди), рдХрд╛рд░реНрдЯреВрди рд╕реЛрдпреВрдЬрд╝реНрдореБрд▓реНрдЯрдлрд┐рд▓реНрдо рд╕реНрдЯреВрдбрд┐рдпреЛ , рд╢реАрд░реНрд╖ рдХрд╛рд░реНрдЯреВрди рд╕реЛрдпреБрдЬрд╝реБрд▓рдордлрд╝рд┐рд▓реНрдо, рдХрд╛рд░реНрдЯреВрди рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реЛрдпреБрдЬрд╝реНрдореБрд▓реНрдлрд╝рд┐рд▓реНрдо
рдпреБрдХреНрддрд┐: рдЗрди рд╡реАрдбрд┐рдпреЛ рдХреЛ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред
- рдХреЗрд╡рд▓ рд╕реАрдзреЗ рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣реБрдВрдЪ рд╡рд╛рд▓реЗ рд╡реАрдбрд┐рдпреЛ рд╕реНрдерд╛рдиреАрдп рдкреНрд▓реЗрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдирд╣реАрдВ рдЖ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЖрдк рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡реАрдбрд┐рдпреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдЯреИрдорд┐рдВрдЧ рдСрдлрд╝ рдлрд╛рдпрд░ 1 рд╕реАрд░реАрдЬрд╝, рдореЙрд╕рдлрд┐рд▓реНрдо рдлрд┐рд▓реНрдо рдЪрд┐рдВрддрд╛
рдпрджрд┐ рдЖрдк рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд▓реЙрдЧрд┐рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЦреЗрд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЦрд┐рд▓рд╛рдбрд╝реА рдореЗрдВ рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИ, рдПрдХ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рднреЗрдЬреЗрдВ (рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА NewPipeExtractor рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддрдп рд╣реЛ рдЧрдИ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП )ред
рдЗрдВрдЯрд░рдиреЗрдЯ рдзреАрдорд╛ рд╣реЛрдиреЗ рдкрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдзреАрдорд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдмрдВрдж рдирд╣реАрдВ рд╣реБрдЖ)
рдЕрдВрдд рдореЗрдВ
рдмреЗрдЯрд╛ рдЯреИрдмрд▓реЗрдЯ рд╕реЗ рд╕реИрдорд╕рдВрдЧ рд╕реНрдорд╛рд░реНрдЯ рдЯреАрд╡реА рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛, рдЬреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрднрд┐рднрд╛рд╡рдХ рдирд┐рдпрдВрддреНрд░рдг рдЕрднреА рднреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реИред
рд▓реЗрдХрд┐рди рдЖрд╡реЗрджрди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рд╕реНрд╡рдпрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдХрд▓рд╛ред рд╢реБрд░реБрдЖрддреА рдХрд╛рдордХрд╛рдЬреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдкрд╣рд▓реА рдЫрд╛рдк - рджреВрд╕рд░реА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдорд┐рд▓ рдЧрдИред рд╕рднреА рд╕рд╛рдордЧреНрд░реА YouTube рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдм YouTube рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдФрд░, рд╕реБрд░рдХреНрд╖рд┐рдд рдФрд░ рдирд┐рдпрдВрддреНрд░рд┐рдд, рдЬреИрд╕реЗ рдХрд┐ рдЙрд╕рдиреЗ рдЖрдВрдЦ рд╕реЗ рдПрдХ рд╕реНрдХреЛрд▓реЛрдкреЗрдВрджреНрд░ рд▓рд┐рдпрд╛ рдФрд░ рдЧреНрд▓рд╛рд╕ рдЬрд╛рд░ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ред рдФрд░ рдпрд╣ рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдореЗрдВ рд╣реИред