рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рдПрдкреАрдЖрдИ

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





рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдПрдХ рдЖрд╡реЗрджрди рдХрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд╛рдн рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
тАв рдХрд╡рд░реЗрдЬред
тАв рд╕рд░рд▓реАрдХрд░рдгред
тАв рдПрдкреАрдЖрдИ рдЕрдиреБрдмрдВрдз "рдиреАрдЪреЗ-рдКрдкрд░ рд╕рдВрдЧрддред"

рдХрд╡рд░реЗрдЬ:
тАв рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЙрдирдХреА рд░реБрдЪрд┐ рдХреЗ рд╕рдВрдЧреАрдд рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ;
тАв рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЬрд┐рд╕ рд╕рдВрдЧреАрдд рдореЗрдВ рд░реБрдЪрд┐ рд╣реИ, рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
тАв рд▓рдЧрднрдЧ 3 рдорд┐рд▓рд┐рдпрди рд╕реНрдерд╛рдиреАрдп рдФрд░ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдп рдХрд▓рд╛рдХрд╛рд░реЛрдВ рд╕реЗ 200 рд╕реЗ рдЕрдзрд┐рдХ рджреЗрд╢реЛрдВ рдореЗрдВ рд▓рдЧрднрдЧ 200 рдорд┐рд▓рд┐рдпрди рдкрдЯрд░рд┐рдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

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

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

рдЖрдЗрдП рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдкреАрдЖрдИ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВред

рдЖрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрд╡рдпрдВ рдФрд░ рдЙрд╕рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдпрд╣рд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рд▓рд┐рдВрдХ ред
рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 8 рдХреА рдорд╛рдирдХ рдСрдбрд┐рдпреЛ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдПрдкреАрдЖрдИ рдлреАрдЪрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд▓рд╛рдХрд╛рд░ рдХрд╛ рдирд╛рдо, рд╢реАрд░реНрд╖ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдФрд░ рдирдП рд░рд┐рд▓реАрдЬ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдПрдХ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд░реЗрдбрд┐рдпреЛ рдорд┐рд▓рд╛рдПрдВ тАЭрдпрд╛ рдХрд▓рд╛рдХрд╛рд░ рдпрд╛ рдЧреАрдд рдХреА рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреЗрдВред

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

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

рдЫрд╡рд┐

рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫрд╡рд┐ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ

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

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



рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдПрдкрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рджреВрд╕рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд▓рд╛рдХрд╛рд░ рдпрд╛ рдЧреАрдд (рдорд┐рдХреНрд╕, рдЯреНрд░реИрдХ, рдПрд▓реНрдмрдо рдпрд╛ рд╕рд┐рдВрдЧрд▓) рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЯреИрдм рдкрд░ рдПрдХ рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЪрдпрдирд┐рдд рдорд┐рд╢реНрд░рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред "рдиреЛрдЯ" рдкреНрд░рддреАрдХ рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрджрд┐ рдЪрд┐рд╣реНрдирд┐рдд рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рд╕реЗ рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рд▓реЙрдиреНрдЪ рд╣реЛрдЧрд╛ред рдиреАрдЪреЗ рдкреГрд╖реНрда "рд╢реИрд▓реА" рдФрд░ "рдорд┐рдХреНрд╕" рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд╕рдВрдж рдкрд░ рдЦреБрд▓рддреЗ рд╣реИрдВред



рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди:
рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдПрдХ рд╕рд░рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реИ рдЬреЛ рдореЙрдбрд▓ - рд╡реНрдпреВ рдореЙрдбрд▓ (MVVM) рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди 8 рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдЗрд╕рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ, рдореЙрдбрд▓ (рдбреЗрдЯрд╛) C # рдХреНрд▓рд╛рд╕реЗрд╕ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рд╡реНрдпреВ (рдпреВрдЬрд░ рдЗрдВрдЯрд░рдлреЗрд╕) WPApp рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреЙрдкреБрд▓реЗрдЯреЗрдб PhoneApplicationPages рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред MainViewModel, рдЬреЛ рдореЙрдбрд▓ рдФрд░ рджреГрд╢реНрдп рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдПрдХ C # рд╡рд░реНрдЧ рднреА рд╣реИред рдпрд╣ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреГрд╖реНрдареЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдХреЛрдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЖрдк рдпрд╣рд╛рдВ MVVM рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдкреГрд╖реНрда рдХреЗ рдирд┐рдЪрд▓реЗ рднрд╛рдЧ рдореЗрдВ рднреА рджреЗрдЦреЗрдВ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд▓рд┐рдВрдХ рдХреА рд╕реВрдЪреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдХреЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рд╡рд┐рд╡рд░рдг рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╡рд┐рдХреА рдореЗрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреГрд╖реНрда рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣рд╛рдВ рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдПрдкреАрдЖрдИ рдХреА рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЙрдирдХреА рдХреНрд╖рдорддрд╛рдУрдВ:



рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрд╡рд╛рдПрдБ Nokia Music API рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИрдВ:



Nokia Music API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдРрдк рдЖрдИрдбреА рдФрд░ рдРрдк рдЯреЛрдХрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рд▓реЙрдиреНрдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ)ред рдЙрдиреНрд╣реЗрдВ рдПрдкреАрдЖрдИ рдкрдВрдЬреАрдХрд░рдг рдкреГрд╖реНрда рдкрд░ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдХреЗ рдФрд░ рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Music Explorer рдХреЗ рд▓рд┐рдП рдРрдк рдЖрдИрдбреА рдФрд░ рдРрдк рдЯреЛрдХрди MusicApi.cs рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВ:

namespace MusicExplorer { ... public class MusicApi { // Constants public const string MUSIC_EXPLORER_APP_ID = "music_explorer_private_app_id"; // real app id not shown here public const string MUSIC_EXPLORER_APP_TOKEN = "music_explorer_private_app_token"; // real app token not shown here ... } } 


WP8 рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдореЗрдВ рд╡рд░реНрддрдорд╛рди Nokia Music API рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдВрдХ рднреА рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ JSON.Net рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рддрд╛рдХрд┐ рдЗрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХреЗред
рдЖрд╡рд╢реНрдпрдХ рд▓рд┐рдВрдХ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢ Music Explorer рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ release_notes.txt рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИрдВ ред

Nokia Music API рдХрд╛ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг:
рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рджреЗрд╢ рдХреЗ рд▓рд┐рдП рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рд╕реЗрд╡рд╛ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдлреЛрди рд▓реЛрдХреЗрд╢рди рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдПрдкреАрдЖрдИ рдПрдкреАрдЖрдИ рдХреЗ рд╣рд░ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдлреЛрди рдкрд░ рдХреНрд╖реЗрддреНрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдФрд░ рдЬрд╛рдВрдЪрддрд╛ рд╣реИ)ред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдиреБрд╡рд╛рджрд┐рдд рдФрд░ рджреЗрд╢-рдЖрдзрд╛рд░рд┐рдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдКрдкрд░ рдЪрд┐рддреНрд░рдорд╛рд▓рд╛ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдлрд┐рдирд▓реИрдВрдб рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рдорд┐рдХреНрд╕ рдХреЛ рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╢реАрд░реНрд╖ рдлрд┐рдирд┐рд╢ рдХрд▓рд╛рдХрд╛рд░ рднреА рд╣реИрдВред рдпрджрд┐ рдЖрдк Nokia Music API (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд░реНрдордиреА рдХреЗ рд▓рд┐рдП de рдпрд╛ UK рдХреЗ рд▓рд┐рдП gb) рдХреЛ рдХреЙрд▓ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕реВрдЪреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдорд╛рдиреНрдп рджреЗрд╢ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред

 using Nokia.Music.Phone; ... namespace MusicExplorer { ... public partial class MainPage : PhoneApplicationPage { ... private CountryResolver resolver = null; ... private void InitializeNokiaMusicApi(string twoLetterCountryCode) { if (resolver == null) { resolver = new CountryResolver(MusicApi.MUSIC_EXPLORER_APP_ID, MusicApi.MUSIC_EXPLORER_APP_TOKEN); } resolver.CheckAvailability((Response<bool> response) => { Deployment.Current.Dispatcher.BeginInvoke(() => { if (response.Result) { // Make initial requests to fill models. App.MusicApi.Initialize(twoLetterCountryCode); ... } else { MessageBox.Show("Sorry, Nokia Music is not available in this locale."); } }); }, twoLetterCountryCode.ToLower()); } } } 


рдПрдХ рдЧреНрд░рд╛рд╣рдХ рдмрдирд╛рдПрдБ:
рд╕рдВрдЧреАрдд рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ, Nokia Music API рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░, рдКрдкрд░ рд╡рд░реНрдгрд┐рдд CountryResolver рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдЖрд╕рд╛рди рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП MusicApi рд╡рд░реНрдЧ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИред Nokia Music рд╕реЗрд╡рд╛ рдХреЗ рд╕рднреА рдЕрдиреБрд░реЛрдз MusicClient рд╡рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдФрд░ рдЗрд╕рд▓рд┐рдП Nokia Music рд╕реЗрд╡рд╛ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЕрдЧрд▓рд╛ рдХрджрдо рд╣реИ, рдкреНрд░рд╛рд░рдВрднрд┐рдХ MusicApi рдкрджреНрдзрддрд┐ рдореЗрдВ MusicClient рдмрдирд╛рдирд╛ред

 using Nokia.Music.Phone; using Nokia.Music.Phone.Types; ... namespace MusicExplorer { ... public class MusicApi { ... // Members private MusicClient client = null; private bool initialized = false; ... public void Initialize(string countryCode) { // Create a music client with correct AppId and Token/AppCode if (countryCode == null || countryCode.Length != 2) { client = new MusicClient(MUSIC_EXPLORER_APP_ID, MUSIC_EXPLORER_APP_TOKEN); } else { client = new MusicClient(MUSIC_EXPLORER_APP_ID, MUSIC_EXPLORER_APP_TOKEN, countryCode.ToLower()); } initialized = true; } ... } } 


рд╣рдо рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ:
Nokia Music рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдПрдХ рд╕реНрдерд╛рдиреАрдпрдХреГрдд MusicClient рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, MusicApi рд╕реЗ GetTopArtists рдкрджреНрдзрддрд┐ Nokia рд╕рдВрдЧреАрдд рд╕реЗрд╡рд╛ рдореЗрдВ 10 рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рддреА рд╣реИ (рджреЗрд╢ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ MusicClient рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) рдФрд░ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ MainViewModel рдХреЗ рдЯреЙрдкрдЖрд░реНрдЯрд┐рд╕реНрдЯреЛрдВ рдХреЛ рднрд░рддрд╛ рд╣реИред рдж рд╣реВ рдСрдлрд╝ рдж рдЯреЙрдк рдкреИрдиреЛрд░рдорд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдЯреЙрдкрдЖрд░реНрдЯрд┐рд╕реНрдЯ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╢реЗрд╖ рдЕрдиреБрд░реЛрдз (рдирдИ рд░рд┐рд▓реАрдЬрд╝, рд╢реИрд▓реА, рдЖрджрд┐) рд╕рдорд╛рди рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ рд╕реЗ рдирд╣реАрдВ рдорд╛рдиреЗрдВрдЧреЗред рдЖрдк рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреГрд╖реНрда рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

 namespace MusicExplorer { ... public class MusicApi { ... // Members private MusicClient client = null; private bool initialized = false; ... public void GetTopArtists() { if (!initialized) { return; } client.GetTopArtists((ListResponse<Artist> response) => { Deployment.Current.Dispatcher.BeginInvoke(() => { // Use results if (response != null && response.Result != null && response.Result.Count > 0) { App.ViewModel.TopArtists.Clear(); foreach (Artist a in response.Result) { if (a.Thumb100Uri != null) { App.ViewModel.TopArtists.Add(new ArtistModel() { Name = a.Name, Country = CountryCodes.CountryNameFromTwoLetter(a.Country), Genres = a.Genres[0].Name, ThumbUri = a.Thumb100Uri, Id = a.Id }); } else { App.ViewModel.TopArtists.Add(new ArtistModel() { Name = a.Name, Country = CountryCodes.CountryNameFromTwoLetter(a.Country), Genres = a.Genres[0].Name, ThumbUri = new Uri("/Assets/thumb_100_placeholder.png", UriKind.Relative), Id = a.Id }); } } } if (response != null && response.Error != null) { ShowNokiaMusicApiError(); } HideProgressIndicator("GetTopArtists()"); }); }); ShowProgressIndicator("GetTopArtists()"); } ... } } 


рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рд▓реЙрдиреНрдЪрд░реНрд╕:
MusicApi Music Explorer рдХреА рдирд┐рдореНрди рд╡рд┐рдзрд┐ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рдорд┐рд╢реНрд░рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП Nokia Music рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╕реЗрд╡рд╛ рдХреЛ рдиреЛрдХрд┐рдпрд╛ рдореНрдпреВрдЬрд┐рдХ рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдпрд╛ рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рдкреЗрдЬ рдкрд░ рдЦреЛрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Nokia Music API рдореЗрдВ рдХреБрдЫ рд▓реЙрдиреНрдЪрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рдХрд▓рд╛рдХрд╛рд░, рдорд┐рдХреНрд╕ рдпрд╛ рдкреАрд╕ рдЖрдИрдбреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЕрдиреНрдп рдиреЛрдХрд┐рдпрд╛ рд╕рдВрдЧреАрдд рдПрдк рд╕реЗрд╡рд╛рдУрдВ рд╕реЗ рдЕрдиреБрд░реЛрдз рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдЖрдИрдбреА рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

 using Nokia.Music.Phone; using Nokia.Music.Phone.Tasks; ... namespace MusicExplorer { ... public class MusicApi { ... public void LaunchArtistMix(string artistName) { ... PlayMixTask task = new PlayMixTask(); task.ArtistName = artistName; task.Show(); } ... } } 


рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рд╕рдВрдЧреАрдд:
рдкрд╕рдВрджреАрджрд╛ рдореЗрдВ рдХрд▓рд╛рдХрд╛рд░реЛрдВ рдХреА рд╕реВрдЪреА рд▓реЛрдбрдбрд╛рдЯрд╛ рдореЗрди рд╡реНрдпреВрдореЙрдбрд▓ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рд╣реИред рдХреЛрдб рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рд╕реВрдЪреА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдард╛рдП рдЧрдП рдХрджрдореЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИрдВред

 using Microsoft.Xna.Framework.Media; ... namespace MusicExplorer.Models { ... public class MainViewModel : INotifyPropertyChanged { ... public ObservableCollection<ArtistModel> LocalAudio { get; private set; } ... MediaLibrary mediaLib = null; //       . ... public MainViewModel() { LocalAudio = new ObservableCollection<ArtistModel>(); ... //     LocalAudio.Add(new ArtistModel() { Name = "MusicExplorerTitlePlaceholder", ItemHeight = "110", ItemWidth = "400" }); } ... public void LoadData() { mediaLib = new MediaLibrary(); ... foreach (Artist a in mediaLib.Artists) { if (a.Songs.Count <= 0) continue; //     string artist = a.Name; int trackCount = a.Songs.Count; int playCount = 0; //      foreach (Song s in a.Songs) { playCount += s.PlayCount; } //     . bool artistAdded = false; for (int i = 1; i < LocalAudio.Count; i++) // Index 0     { if (Convert.ToInt16(LocalAudio[i].PlayCount) < playCount) { this.LocalAudio.Insert(i, new ArtistModel() { Name = artist, LocalTrackCount = Convert.ToString(trackCount), PlayCount = Convert.ToString(playCount) }); artistAdded = true; break; } } // ...     ,      . if (artistAdded == false) { this.LocalAudio.Add(new ArtistModel() { Name = artist, LocalTrackCount = Convert.ToString(trackCount), PlayCount = Convert.ToString(playCount) }); } ... } // ,   -20   int removeIndex = App.ViewModel.LocalAudio.Count - 1; while (removeIndex > 20) { App.ViewModel.LocalAudio.RemoveAt(removeIndex); removeIndex--; } //      ┬л ┬╗ foreach (ArtistModel m in App.ViewModel.LocalAudio) { if (m.Name == "MusicExplorerTitlePlaceholder") continue; if (Convert.ToInt16(m.LocalTrackCount) > (totalTrackCount / totalArtistCount)) { m.ItemHeight = "200"; m.ItemWidth = "206"; } else { m.ItemHeight = "100"; m.ItemWidth = "206"; } } ... } ... } } 


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

рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рд╣рдо рдЙрдиреНрдирдд рдлреЛрдЯреЛ рдХреИрдкреНрдЪрд░рд┐рдВрдЧ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред

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


All Articles