AdHoc рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЬрд╛рд░реА рдХрд░рдиреЗ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП Xcode рд╕реЗ рдмрдирддрд╛ рд╣реИ

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

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

рд╣рдо рдЗрди рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рддреЗ рд╣реИрдВ, рдПрдХ рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ, Xcode рд╕реЗ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд╕рд╛рде!



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

рд▓реЗрдХрд┐рди рдпрд╣ рдпреЛрдЬрдирд╛, рдореИрдВ рдХрд╣реВрдВрдЧрд╛, рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЕрднреА рднреА рдЧреНрд░рд╛рд╣рдХ рдХреЛ рдпрд╣ рд╕рдордЭрд╛рдирд╛ рд╣реИ рдХрд┐ рдЯреЗрд╕реНрдЯрдлрд▓рд╛рдЗрдЯ рдХреЗ рд╕рд╛рде рдкрдВрдЬреАрдХрд░рдг рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЛ рдЕрдкрдиреЗ рд▓рд┐рдП рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (рдпрд╣ AppStore рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рд╕реНрдерд╛рдкрдирд╛ рдЙрдирдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рд╣реЛрддреА рд╣реИ)ред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рднреА, рд╣рдо рдЕрдкрдиреЗ рдЬреАрд╡рди рдХреЛ рдЕрдкрдиреЗ рдкрдХреНрд╖ рдореЗрдВ рд╕рд░рд▓ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ - рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд░ рдЬрдм рд╣рдореЗрдВ рдкрд╣рд▓реЗ Xcode рдореЗрдВ рдПрдХ рдФрд░ AdHoc рдмрд┐рд▓реНрдб рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рдСрд░реНрдЧрдирд╛рдЗрдЬрд╝рд░ рд╡рд┐рдВрдбреЛ рдореЗрдВ AdHoc рд╡рд┐рддрд░рдг рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рд╕рд╣реА рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ рдФрд░ .ipa рдлрд╝рд╛рдЗрд▓ рдХреЛ рдбрд┐рд╕реНрдХ рдкрд░ рд╕рд╣реЗрдЬреЗрдВред рдлрд┐рд░ TestFlight рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рдПрдВ, рдФрд░ рдЗрд╕ .ipa рдХреЛ рднрд░реЗрдВ, рдПрдХ рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦреЗрдВ, рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╕реЗрдЯ рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдпрд╣ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╣реИред рдмрд╣реБрдд, рдмрд╣реБрдд рдЗрд╢рд╛рд░реЛрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реЗрд╡рд╛ рдЕрдХреНрд╕рд░ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдпрд╛ рдмрд╕ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЧрддрд┐ рдРрд╕реА рд╣реЛрддреА рд╣реИ рдХрд┐ рдЖрд╡реЗрджрди рдХреА рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╕рдордп рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдЧреНрд░рд╛рд╣рдХ рд╕реЗ рдпрд╣ рд╕реБрдирдирд╛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реБрдЦрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЖрдкрдиреЗ рдЦреБрдж рдЯреЗрд╕реНрдЯрдлрд▓рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рдБрдЪ рдХреАред
рдирддреАрдЬрддрди, рдореЗрд░реЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╕реНрдЯреНрд░реЙ рдпрд╣ рддрдереНрдп рдерд╛ рдХрд┐ рд╡реЗ рдЕрднреА рддрдХ iOS7 рдкрд░ рд╕реНрдерд╛рдкрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЕрдкрдиреА рдирд╡реАрдирддрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдФрд░ рдлрд┐рд░ рд╣рдо рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдЖрдП рдЬреЛ рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рди рд╣реЛ рдЧрдпрд╛ред

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

рдФрд░ рдпрд╣рд╛рдБ рдЗрд╕ рдирд┐рд░реНрд╡рд╛рдг рдореЗрдВ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЛрдмрд╛рдЗрд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдЬрд╛рджреВред


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

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

рдпрд╣рд╛рдБ, рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЕрдореЗрдЬрди S3 рд╕реНрдЯреЛрд░реЗрдЬ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Amazon Web Services рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрди рдЕрдк рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдпрд╣рд╛рдБ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдбрд░рд╛рд╡рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рднрдВрдбрд╛рд░рдг рдФрд░ рд╡рд┐рддрд░рдг рдХреБрдЫ рдкреИрд╕реЗ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЖрдПрдЧрд╛, рдЬрд┐рд╕реЗ рдореИрдВ рдпрд╣рд╛рдВ рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд▓рд╕реА рд╣реВрдВ, рдЕрдм рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдирд╛рддреЗ рд╣реИрдВ, рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░рд╛ HTML рдХреИрд╕рд╛ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВ, index.html рдХрд╣реЗрдВред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдЗрдЯреНрд╕-рд╕реЗрд╡рд╛рдУрдВ рдкрд░ рд▓рд┐рдВрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдкреНрд░реЛрдЯреЛрдХреЙрд▓

<html> <head> <title>My Ad-Hoc Distribution Site</title> <style> li{font-size:60pt margin:20px 0} </style> <meta name="viewport" content="width=device-width" /> <meta name="apple-mobile-web-app-capable" content="yes" /> </head> <body> <ul> <li><a href="itms-services://?action=download-manifest&url=http://mybucketname.s3.amazonaws.com/MyApp1.plist">    MyApp1</a></li> <li><a href="itms-services://?action=download-manifest&url=http://mybucketname.s3.amazonaws.com/MyApp2.plist">     MyApp2</a></li> </ul> </body> </html> 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реВрдЪреА рдпрд╣рд╛рдВ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдХреЗрд╡рд▓ рдПрдХ рдЖрд╡реЗрджрди рддрдХ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рд╣реЛрдВрдЧреЗред рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рдЕрд▓рдЧ рд▓рд┐рдВрдХ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред

рдкрддреЗ рдореЗрдВ itms-services: // ... рдЖрдкрдХреЛ рдХреЗрд╡рд▓ mybucketname рдФрд░ .plist рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╛рдиреА рдЕрдореЗрдЬрд╝рди рдПрд╕ 3 рдкрд░ рдЕрдкрдиреА рдмрд╛рд▓реНрдЯреА рдХреЗ рдирд╛рдо рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдиреНрд╣реЗрдВ рдмрджрд▓реЗрдВ, рдЬрд╣рд╛рдВ рдЖрдк рдпрд╣ рд╕рдм рдбрд╛рд▓рддреЗ рд╣реИрдВ, рдФрд░ рдЖрдкрдХреЗ .plist рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде (рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдореЗрд▓ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред

.Plist рдЦреБрдж рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <string>http://mybucketname.s3.amazonaws.com/MyApp1.ipa</string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <string>com.mycoolcompanyname.myapp1</string> <key>bundle-version</key> <string>1.0</string> <key>kind</key> <string>software</string> <key>title</key> <string>MyApp1</string> </dict> </dict> </array> </dict> </plist> 


рдмреЗрд╢рдХ , рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░-рдкреИрдХреЗрдЬ рдХреБрдВрдЬреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ mybucketname рдирд╛рдо рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ MyApp1.ipa рдХреЗ рдмрдЬрд╛рдп рдЕрдкрдиреЗ .ipa рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВред рдФрд░ рдХреБрдВрдЬреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдмрдВрдбрд▓-рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рдмрджрд▓рдирд╛ рди рднреВрд▓реЗрдВред Com.mycoolcompanyname.myapp1 рдХреЗ рдмрдЬрд╛рдп , рдЕрдкрдиреА рдмрдВрдбрд▓ рдЖрдИрдбреА рджрд░реНрдЬ рдХрд░реЗрдВ , рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдиреЗ Xcode рдореЗрдВ рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдирд╛рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдерд╛ред
рдЦреИрд░, рд╢реАрд░реНрд╖рдХ рдХреБрдВрдЬреА рдореЗрдВ рдЖрд╡реЗрджрди рдХрд╛ рд╡рд╛рдВрдЫрд┐рдд рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛! рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдм рдЖрдк AdHoc рд╡рд┐рддрд░рдг рдХреЗ рддрд╣рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ S3 рдкрд░ рд╣реИрдВрдбрд▓ рдХреЛ рдЗрд╕ рдмрд╛рд▓реНрдЯреА рдореЗрдВ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдореЛрдмрд╛рдЗрд▓ рдмреНрд░рд╛рдЙрдЬрд░ рдореЗрдВ рдЦреЛрд▓рдХрд░ mybucketname.s3.amazonaws.com/index.html рд▓рд┐рдВрдХ рдкрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдЖрд▓рд╕реА рдХреЗ рд▓рд┐рдП рднреА рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВред

Xcode рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рдиред рд╣рдо рдкреЛрд╕реНрдЯ-рдПрдХреНрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВред


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

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



рдЗрд╕ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдбреНрд░реЙрдк-рдбрд╛рдЙрди рдмреЙрдХреНрд╕ рдореЗрдВ, рдЕрдкрдиреЗ рд▓рдХреНрд╖реНрдп рдХрд╛ рдирд╛рдо рдЪреБрдиреЗрдВред рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рднреА рдЪрд░, рдЬреИрд╕реЗ $ {PRODUCT_NAME} рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреЗ рдЕрдиреБрд░реВрдк рд▓рд┐рдП рдЬрд╛рдПрдВрдЧреЗред

рдпрд╣рд╛рдВ рд╣рдо рдРрд╕реЗ рд╕реНрдХрд┐рдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:

 SIGNING_IDENTITY="iPhone Distribution: MyCoolCompanyName (G4DHGXDY2)" PROVISIONING_PROFILE="${HOME}/Library/MobileDevice/Provisioning Profiles/20DB9849-4CFE-4005-81F6-1A594119839B.mobileprovision" LOG="/tmp/post-build-upload-to-s3.log" DATE=$( /bin/date +"%Y-%m-%d" ) ARCHIVE=$( /bin/ls -t "${HOME}/Library/Developer/Xcode/Archives/${DATE}" | /usr/bin/grep xcarchive | /usr/bin/sed -n 1p ) DSYM="${HOME}/Library/Developer/Xcode/Archives/${DATE}/${ARCHIVE}/dSYMs/${PRODUCT_NAME}.app.dSYM" APP="${HOME}/Library/Developer/Xcode/Archives/${DATE}/${ARCHIVE}/Products/Applications/${PRODUCT_NAME}.app" /usr/bin/open -a /Applications/Utilities/Console.app $LOG echo -n "Creating .ipa for ${PRODUCT_NAME}... " > $LOG /bin/rm "/tmp/${PRODUCT_NAME}.ipa" /usr/bin/xcrun -sdk iphoneos PackageApplication "${APP}" -o "/tmp/${PRODUCT_NAME}.ipa" --sign "${SIGNING_IDENTITY}" --embed "${PROVISIONING_PROFILE}" >> $LOG echo "Created .ipa for ${PRODUCT_NAME}" >> $LOG echo -n "Uploading to S3... " >> $LOG /opt/local/bin/s3cmd put --acl-public --force --guess-mime-type /tmp/${PRODUCT_NAME}.ipa "s3://mybucketname/MyApp.ipa" >> $LOG echo "Done." >> $LOG /usr/bin/open "https://basecamp.com/path-to-your-project-to-let-people-know-of-new-build" 


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

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

рдореИрдВ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд░рддрд╛ рд╣реВрдВред рд╣рдо рдпрд╣рд╛рдВ рд╕реЗрд╡ рдХрд░рддреЗ рд╣реИрдВ - рдиреАрдЪреЗ рдареАрдХ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдмрд┐рд▓реНрдб рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ рдФрд░ рд╡рд╣рд╛рдВ рдХреЛрдб рд╕рд╛рдЗрдирд┐рдВрдЧ рдЖрдЗрдбреЗрдВрдЯрд┐рдЯреА рд╕реЗрдХреНрд╢рди рдвреВрдВрдвреЗрдВред
рдЗрд╕рдореЗрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдореВрд▓реНрдп рд╣реИрдВред рд▓реЗрдХрд┐рди "рд╕рд╣рд╛рдпрдХ" Xcode рдЙрдиреНрд╣реЗрдВ рдорд╛рдирд╡-рдкрдардиреАрдп рд░реВрдк рдореЗрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡рд╣реАрдВ рдЙрдЬрд╛рдЧрд░ рд╣реЛрдиреЗ рд╕реЗ рднреА рд░реЛрдХрддрд╛ рд╣реИред

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

Xcode рдХреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ, рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рдерд╛:

 iPhone Distribution: MyCoolCompanyName (G4DHGXDY2) 20DB9849-4CFE-4005-81F6-1A594119839B 


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

PROVISIONING_PROFILE = "$ {HOME} / рд▓рд╛рдЗрдмреНрд░реЗрд░реА / MobileDevice / рдкреНрд░рд╛рд╡рдзрд╛рди рдкреНрд░реЛрдлрд╛рдЗрд▓ / 20DB9849-4CFE-4005-81F6-1A594119839B .mobileprovision"ред

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

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЛ рд╕рд░рд▓ рдХреНрд░рд┐рдпрд╛рдПрдВ рдХрд░рддреА рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкрд░рд┐рдгрд╛рдореА .app рдлрд╝рд╛рдЗрд▓ .ipa рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИред рдлрд┐рд░ рдпрд╣ .ipa S3 рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдПрдХ .log рдлрд╝рд╛рдЗрд▓ рднреА рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ рдЬрд╣рд╛рдБ рдкрд░ рдЬреЛ рдХреБрдЫ рднреА рд╣реЛрддрд╛ рд╣реИ рд╡рд╣ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ .log рдлрд╝рд╛рдЗрд▓ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝реЛрд▓реНрдбрд░ (.ipa рдХреЗ рд╕рдорд╛рди) рдореЗрдВ рд░рдЦреА рдЧрдИ рд╣реИ рдФрд░ рдХрдВрд╕реЛрд▓ рд╕рд┐рд╕реНрдЯрдо рдЙрдкрдпреЛрдЧрд┐рддрд╛ рджреНрд╡рд╛рд░рд╛ рдЦреЛрд▓реА рдЧрдИ рд╣реИ рддрд╛рдХрд┐ рд╣рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдкреНрд░рдЧрддрд┐ рджреЗрдЦ рд╕рдХреЗрдВред

рдХреЗрд╡рд▓ рдПрдХ рд░рд╣рд╕реНрдп рдмрдЪрд╛ рд╣реИ - рдПрд╕ 3 рдХрд╛рдо рдкрд░ рдХреИрд╕реЗ рднрд░рддрд╛ рд╣реИред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдореЗрдЬрд╝реЕрди рдПрд╕ 3 рдкрд░ рдЕрд╕реЗрдВрдмрд▓реА рднрд░реЗрдВ


рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ, рд╣рдордиреЗ S3 рдкрд░ рдореИрдиреБрдЕрд▓ рдбрд╛рд▓рдиреЗ рдХреЗ рд╕рд╛рде рдЧрдбрд╝рдмрдбрд╝реА рдирд╣реАрдВ рдХреА рд╣реИ, рдпрд╣ рдкрд░реЗрд╢рд╛рдиреА рд╣реИ, рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ ( S3cmd ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

рд╣рдо рдПрдХ рдЦрд╕рдЦрд╕ тАЛтАЛрдкрд░ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рдореИрдХрдкреЛрд░реНрдЯреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рд▓рддреЗ рд╣реИрдВред рдХреМрди рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдРрд╕рд╛ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд▓рд┐рдирдХреНрд╕ рдкреНрд░рд╕рдиреНрди рдХреЛ рдбрд╛рд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ MacPorts рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо рдЖрдкрдХреЗ MacOS ( рдорд╛рдЙрдВрдЯреЗрди рд▓рд╛рдпрди , рд▓рд╛рдпрди рдпрд╛ рд╕реНрдиреЛ рд▓реЗрдкрд░реНрдб ) рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдбрд╛рд▓реЗрдВрдЧреЗред

рдЕрдЧрд▓рд╛, рд╣рдо s3cmd рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рд╕реНрд╡рдпрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред MacPorts рдХреЗ рд╕рд╛рде, рдпрд╣ рдмреЗрд╣рдж рд╕рд░рд▓ рд╣реИред

рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рд╣рдо рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ:

 sudo port install s3cmd 


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

рдЗрд╕рд▓рд┐рдП рд╣рдо рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ:
 s3cmd --configure 


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

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
 Enter new values or accept defaults in brackets with Enter. Refer to user manual for detailed description of all options. Access key and Secret key are your identifiers for Amazon S3 Access Key: XXXXX    XXX Secret Key: YYYY    YYY Encryption password is used to protect your files from reading by unauthorized persons while in transfer to S3 Encryption password: Path to GPG program: When using secure HTTPS protocol all communication with Amazon S3 servers is protected from 3rd party eavesdropping. This method is slower than plain HTTP and can't be used if you're behind a proxy Use HTTPS protocol [No]: No On some networks all internet access must go through a HTTP proxy. Try setting it here if you can't conect to S3 directly HTTP Proxy server name: New settings: Access Key: XXXXX   XXX Secret Key: YYYY   YYY Encryption password: Path to GPG program: None Use HTTPS protocol: False HTTP Proxy server name: HTTP Proxy server port: 0 Test access with supplied credentials? [Y/n] Y Please wait... Success. Your access key and secret key worked fine :-) Now verifying that encryption works... Not configured. Never mind. Save settings? [y/N] y Configuration saved to '/Users/st/.s3cfg' 


рдЦреИрд░, рдпрд╣ рд╕рдм рдЕрдм рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЖрдкрдХреЛ рдмрд╕ рдЕрдкрдиреЗ S3 рдмрд╛рд▓реНрдЯреА рдХреЗ рдирд╛рдо рдФрд░ рд▓рд╛рдЗрди рдореЗрдВ рдЖрд╡реЗрджрди рдХреЗ рдирд╛рдо рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

/ opt / local / bin / s3cmd put --acl-public --force --guess-mime-type /tmp/$azingPRODUCT_NAMEтЦ║.ipa "s3: // mybucketname / MyApp .ipa >> $ рд▓реЙрдЧ

рдЙрд╕рдХреЗ рдмрд╛рдж - рдЖрдк рдирд┐рд░реНрдорд╛рдг рдХреЛ рдХреЗрд╡рд▓ рд╕рдВрдЧреНрд░рд╣ (Xcode> рдЙрддреНрдкрд╛рдж> рд╕рдВрдЧреНрд░рд╣) рдХреЗ рддрд╣рдд рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

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


All Articles