2013-03-15 104 views
2

我一直在寻找学习如何使用xcode进行越狱开发。使用xcode进行越狱开发

我有狮子和越狱iPhone3G和xcode4.6不支持iPhone3G。我已经安装了ldid,但是不知道如何使用它。

我也必须发布启动守护进程,并将它们附加到我的应用程序中。我遵循this制作守护进程的教程,但我陷入了在xcode中创建开放工具链模板的设置中。我跟着每一步,但我的xcode没有显示任何开放工具链的模板。 真的需要打开工具链模板吗?

回答

3

你说得对。 Xcode 4.6不支持iPhone 3G。你可以安装旧版本的Xcode吗?例如,Xcode 4.4仍支持3G。

Login to the Apple Developer Portal and download old versions here

您可以选择在不同的文件夹中安装了旧版本的Xcode的,所以它不会覆盖新版本(例如,安装到/Developer-old/或东西)。

一旦你安装了旧版本的Xcode,可以导航到安装目录下,寻找指定的目录:

iPhoneOS5.0.sdk

(或可能iPhoneOS5.1。 sdk也会起作用)。然后,将整个文件夹复制到新的Xcode 4.6安装目录中。例如:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

之后,你应该看到这一点:

iPhoneOS5。 0.sdk
iPhoneOS6.1.sdk

在安装,现在就可以构建的应用程序的5.0 SDK iPhone 3G,使用Xcode 4.6。如果你愿意,你现在也可以卸载Xcode 4.4。 See more about this in this other question。关键是你将构建你的应用程序armv6(仅)。 Armv6是iPhone 3G的处理器。

第二步是将关闭 Xcode中的代码签名。在您的项目设置中,将设置配置文件设置为不要输入代码You must modify an Xcode configuration file to allow you to do this

现在你在Xcode中构建应用程序。完成后,导航到已经构建应用程序的Mac上的目录(MyAppName.app/文件夹所在的目录)。然后,使用ldidfake code sign the app executable

ldid -S MyAppName.app/MyAppName 

现在,您的应用程序有一个假的代码签名,将允许它到一个越狱的手机上运行。

然后,您使用sshscp或其他东西将其传输到您的手机,它应该安装在/Applications/下。

您已经拥有建立iOS Launch Daemons上的最佳链接。我会坚持这个教程。 ,我在Xcode中没有任何开放工具链模板。我只是使用Chris的教程来了解如何构建非图形守护程序main程序(不是UIApplication),将其复制到我的MyAppName.app文件夹,并创建定义启动守护程序的com.mycompany.mydaemon.plist文件。

一旦plist中被安装在/System/Library/LaunchDaemons/在手机上,你可以启动它,而无需重启手机,具有:

launchctl load -w /System/Library/LaunchDaemons/com.mycompany.mydaemon.plist 

在命令行(电话)。或者,只需重新启动手机,守护进程就会自动启动。

虽然我在学习之前就已经学会了这一点,但现在你可以看看iOSOpenDev,如果你想要更精细的做某些东西的话。

+0

真棒解释,我会尝试这个,并在阅读你的答案后我有一种感觉,现在我可以做到这一点..非常感谢 – 2013-03-15 10:34:21

+0

非常欢迎,iVishal :) – Nate 2013-03-15 10:37:59

+0

嘿我试过这个,但我越来越此错误...为架构'armv6'选择了不支持的编译器'GCC 4.2' 警告:没有规则处理架构armv6的sourcecode.c.objc类型的文件'$(PROJECT_DIR)/JailbreakDemo/main.m' 警告:没有规则处理架构armv6的sourcecode.c.objc文件'$(PROJECT_DIR)/JailbreakDemo/VSAppDelegate.m' 警告:没有规则处理类型为sourcecode的文件'$(PROJECT_DIR)/JailbreakDemo/VSViewController.m' .c.objc架构armv6 :( – 2013-03-15 10:58:12

1

是的。 Xcode可用于开发越狱类项目。 使用iOSOpenDev来设置Xcode和iOS SDK以允许越狱类型的开发。

iOSOpenDev附带一组模板,标志(带ldid)目标,并在其构建阶段创建Debian软件包(软件包被提交到Repos,如ModMyI和BigBoss),除了直接将软件包安装到具有Cmd- Shift-I(构建分析快捷方式)以便立即测试,以及使用Xcode开发越狱类项目的其他有用功能。