iOSの脱獄付きHelloWorld

ジェイルブレイクされたiOSの開発に関するロシア語の情報はそれほど多くないので、この情報が誰かに役立つことを願っています。



ジェイルブレイクされたデバイス用のアプリケーションを作成するために、多くのフレームワークとユーティリティセットが発明されました。 たとえば、 iOSOpenDevまたはTheosのほとんどすべてでは、アプリケーションを作成し、デバイスに配置するだけでなく、Cydiaリポジトリにアップロードすることもできます。

この記事では、Theosを使用してHello Worldアプリケーションを作成する方法を説明します(by @DHowett)



そのため、iOS SDKが必要ですが、このトピックに興味がある場合は、既にお持ちかもしれません。そうでない場合は、 developer.apple.com / devcenter / ios / index.actionをダウンロードしてください。



まず、環境変数を設定します。これにより、theosがインストールされている場所がわかります。 ターミナルで次のように入力します。

export THEOS=/opt/theos
      
      





次に、gitを使用してtheosの最新バージョンをダウンロードします。

 git clone git://github.com/DHowett/theos.git $THEOS
      
      





またはsvn:
 svn co http://svn.howett.net/svn/theos/trunk $THEOS
      
      





次に、ldidユーティリティが必要です。 バイナリに署名するプロセスをシミュレートします。 たとえば、ドロップボックスから友人のフォルダ@DHowettをダウンロードすると、多くのことがわかります。

 curl -s http://dl.dropbox.com/u/3157793/ldid > $THEOS/bin/ldid chmod +x $THEOS/bin/ldid
      
      





また、dpkgユーティリティも必要です。たとえば、ポピー用の任意のポートから配信できます。

 brew install dpkg
      
      





したがって、準備作業は終了しました。



新しいインスタンス作成ユーティリティを使用して新しいプロジェクトを作成し、1-iphone / applicationを選択します。

 $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にサブフォルダーが作成されます。 その中に、アプリケーションのinfo.plistを含むResourcesフォルダーがあります。 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



nicユーティリティは、インストールされているtheosのプロジェクトフォルダにシンボリックリンクも作成します。 そして、実際には、Makefileを使用して、プログラムをビルドおよびアップグレードします。



コンテンツ生成メイクファイル

 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など、プログラムが使用するすべてのフレームワークのリストを追加します



makeコマンドを使用して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」をクリックするなどして、デバイスのスプリングボードを再起動する必要があります。 または、デバイスを再起動すると、プログラムが表示され、起動できるようになります。



基本的に、アプリケーションを書くのに必要なことはそれだけです。 短所があります-インターフェースビルダーとシミュレーターの欠如



All Articles