HelloWorld рдЖрдИрдУрдПрд╕ рдкрд░ рднрд╛рдЧрдиреЗ рдХреЗ рд╕рд╛рде

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

рдЬреЗрд▓рдмреНрд░реЗрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рд░реВрдкрд░реЗрдЦрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╕реЗрдЯ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, iOSOpenDev рдпрд╛ Theos рдЙрдирдореЗрдВ рд╕реЗ рд▓рдЧрднрдЧ рд╕рднреА рдЖрдкрдХреЛ рди рдХреЗрд╡рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ, рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдбрд╛рд▓рдиреЗ, рдмрд▓реНрдХрд┐ рдЙрдиреНрд╣реЗрдВ Cydia рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ Theos (@DHowett) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ iOS SDK рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИ, рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдбреЗрд╡рд▓рдкрд░.apple.com/devcenter/ios/index.action рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЬрд╛рдиреЗрдВрдЧреЗ рдХрд┐ рдерд┐рдпреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд╣рд╛рдВ рд╣реИред рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рд╣рдо рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ:
export THEOS=/opt/theos 

рдЕрдЧрд▓рд╛, git рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдереЛрд╕ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ:
 git clone git://github.com/DHowett/theos.git $THEOS 

рдпрд╛ svn:
 svn co http://svn.howett.net/svn/theos/trunk $THEOS 

рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ ldid рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЗрд╕реЗ рдмрд╣реБрдд рдХреБрдЫ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреНрд░реЙрдкрдмреЙрдХреНрд╕ рдПрдХ рджреЛрд╕реНрдд рдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ @Dowowett:
 curl -s http://dl.dropbox.com/u/3157793/ldid > $THEOS/bin/ldid chmod +x $THEOS/bin/ldid 

рд╣рдореЗрдВ dpkg рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ рдХрд┐рд╕реА рднреА рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рд╕реЗ рдЦрд╕рдЦрд╕ тАЛтАЛрдХреЗ рд▓рд┐рдП рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
 brew install dpkg 

рддреЛ, рддреИрдпрд╛рд░реА рдХрд╛рдо рдЦрддреНрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЖрдЧреЗ рдмрдврд╝реЗрдВред

рдирдП рдЙрджрд╛рд╣рд░рдг рдХреНрд░рд┐рдПрдЯрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ, 1 - iphone / рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪреБрдиреЗрдВ:
 $THEOS/bin/nic.pl NIC 1.0 - New Instance Creator< ------------------------------ [1.] iphone/application [2.] iphone/library [3.] iphone/preference_bundle [4.] iphone/tool [5.] iphone/tweak Choose a Template (required): 1 Project Name (required): HelloWorld Package Name [com.yourcompany.helloworld]: com.code.monkey Author/Maintainer Name [Max]: Max Instantiating iphone/application in helloworld/... Done. 

рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рд╕рд╛рде рд╡рд░реНрддрдорд╛рди рдлрд╝реЛрд▓реНрдбрд░ helloworld рдореЗрдВ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдЧрд╛ред рдЗрд╕рдореЗрдВ рдЖрдк рд░рд┐рд╕реЛрд░реНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрддреА рд╣реИред Cydia рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпрдВрддреНрд░рдг рдлрд╝рд╛рдЗрд▓ рднреА рд╣реИ
 Package: com.code.monkey Name: HelloWorld Depends: Version: 0.0.1 Architecture: iphoneos-arm Description: An awesome application! Maintainer: Max Author: Max Section: Utilitie 

рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕реНрд░реЛрдд - рдлрд╛рдЗрд▓реЗрдВ
HelloWorldApplication.m
RootViewController.h
RootViewController.mm
main.m

рдирд┐рдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рднреА рд╕реНрдерд╛рдкрд┐рдд рдУрдПрд╕ рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рд╕рд┐рдорд▓рд┐рдВрдХ рдкреИрджрд╛ рдХрд░реЗрдЧрд╛ред рдФрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореЗрдХрдлрд╛рдЗрд▓, рдЬрд┐рд╕рдХреА рдорджрдж рд╕реЗ рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЙрдиреНрдирдпрди рдХрд░реЗрдВрдЧреЗред

рд╕рд╛рдордЧреНрд░реА рдЬрдирд░реЗрдЯ рдореЗрдХрд╛рдЗрд▓
 include theos/makefiles/common.mk APPLICATION_NAME = HelloWorld HelloWorld_FILES = main.m HelloWorldApplication.mm RootViewController.mm HelloWorld_FRAMEWORKS = UIKit CoreGraphics include $(THEOS_MAKE_PATH)/application.mk 

рдЬрд╣рд╛рдВ APPLICATION_NAME рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдирд╛рдо рд╣реИред рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛, рдЗрд╕реЗ рдмрджрд▓рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
[applicationName] _FILES - рд╣рдорд╛рд░реЗ рд╕реНрд░реЛрддреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреАред рд╕рднреА * .m рдФрд░ * .mm рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдпрд╣рд╛рдБ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред
[applicationName] _FRAMEWORKS - рдпрд╣рд╛рдБ рд╣рдо рдЙрди рд╕рднреА рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, UIKit Foundation CoreGraphics QuartzCore

рд╣рдо рдореЗрдХ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ HelloWorld рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП:
 make Making all for application HelloWorld... Compiling main.m... Compiling HelloWorldApplication.mm... Compiling RootViewController.mm... Linking application HelloWorld... Stripping HelloWorld... Signing HelloWorld... 

рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ 3 рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
 export THEOS=/opt/theos/ #     export SDKVERSION=5.1 #   iOS SDK export THEOS_DEVICE_IP=192.168.73.154 # IP   , #         

рд╣рдорд╛рд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рдПрдХ рдкреИрдХреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░реЗрдВ
 make package. 

рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкреИрдХреЗрдЬ рдореЗрдВ deb рдкреИрдХреЗрдЬ com.code.monkey_0.0.1-1_iphoneos-arm.deb рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА sftp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдореЛрдмрд╛рдЗрд▓ рдЯрд░реНрдорд┐рдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
 dpkg -i com.yourcompany.fooproject_0.0.1-1_iphoneos-arm.deb 

рд▓реЗрдХрд┐рди рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░рдХреЗ рдЗрд╕реЗ рдЖрд╕рд╛рди рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
 make package install 

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

рдЕрд╕рд▓ рдореЗрдВ, рдпрд╣ рд╕рдм рдПрдХ рдЖрд╡реЗрджрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗрддрд╛ рд╣реИред рд╡рд┐рдкрдХреНрд╖ - рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрд┐рд▓реНрдбрд░ рдФрд░ рдПрдХ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдХреА рдХрдореА рд╣реИ

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


All Articles