рдорд┐рд╢реНрд░рд┐рдд рд╕реНрд╡рд┐рдлреНрдЯ + рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдпрд╣ рд▓реЗрдЦ рдЫреЛрдЯрд╛ рд╣реЛрдЧрд╛, рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдорд┐рд╢реНрд░рд┐рдд рдФрд░ рдкреБрд░рд╛рдиреЗ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡ рд╕реА + рд╕реНрд╡рд┐рдлреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖реНрдп рдмрдирд╛рддреЗ рд╕рдордп рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЙрддреНрдкрдиреНрди рд╣реБрдИрдВ, рдФрд░ рдореИрдВ рдЙрдирдХрд╛ рд╣рд▓ рдХреИрд╕реЗ рдирд┐рдХрд╛рд▓ рдкрд╛рдпрд╛ред

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

рдореИрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рддреБрдЪреНрдЫ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╕рдВрд▓рдЧреНрди рдХрд░реВрдБрдЧрд╛, рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП:





рдЕрдЧрд▓рд╛ рдореБрджреНрджрд╛ рдУрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред
рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

MyProject-Bridging-Header.h : рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ ObjectiveC- рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдирд╛рдо рд╕реНрд╡рд┐рдлреНрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
MyProject-рд╕реНрд╡рд┐рдлреНрдЯ.рдПрдЪ : рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡ рдХреНрд▓рд╛рд╕реЗрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕реНрд╡рд┐рдлреНрдЯ рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреЛрдб рдмрдирд╛рддрд╛ рд╣реИред
MyProject-Prefix.pch : precompilation рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рднреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

#ifdef __OBJC__ #import "MyProject-Swift.h" #endif 

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

Xcode рдЯрд╛рд░реНрдЧреЗрдЯ рдкрд░ рдЬрд╛рдПрдВ -> BuildSetting рдФрд░ рдирд┐рдореНрди рдкреИрд░рд╛рдореАрдЯрд░ рдЬрд╛рдВрдЪреЗрдВ:
рдЙрджреНрджреЗрд╢реНрдп-рд╕реА рдмреНрд░рд┐рдЬрд┐рдВрдЧ рд╣реИрдбрд░
рдЙрджреНрджреЗрд╢реНрдп-рд╕реА рдЬрдирд░реЗрдЯреЗрдб рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИрдбрд░ рдХрд╛ рдирд╛рдо
рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред

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

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

рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ

 @testable import MyProject 

рдСрдЯреЛрдЯреЗрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЖрдк рд╕реНрд╡рд┐рдлреНрдЯ рдХрдХреНрд╖рд╛рдУрдВ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВред

рджреВрд╕рд░реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рдВрдХрд▓рди рдХрд╛ рдРрд╕рд╛ рд▓рдХреНрд╖реНрдп рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдХреЗ MyProject- рд╕реНрд╡рд┐рдлреНрдЯ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдиреНрдп рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИред рдЗрд╕ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

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

рдЗрд╕реЗ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред

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


All Articles