越狱:在Xcode中开发iOS命令行工具

时间:2016-10-22 00:53:45

标签: ios iphone xcode jailbreak command-line-tool

所以我想在我越狱的iPhone上编写一个非常简单的命令行工具供我个人使用,我可以在手机上本地运行ssh或任何终端应用程序。如果可能的话,我想用苹果新的Swift语言使用Xcode 我看到使用Xcode我可以创建一个'命令行工具',但仅适用于macOS(显然) 我一直在看iphonedevwiki.net和iosopendev.com,但那里的一切似乎都已经过时了。
我的确也在this中弄明白了,但这看起来也很放弃...... 有没有人知道如何以最简单的方式完成我的项目? 感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我知道您的问题是很久以前发布的。但是使用Xcode开发iOS命令行工具很容易。

  1. 只需创建一个iOS单视图应用。
  2. 删除所有其他文件,同时保留这两个文件(info.plist和main.m)。
  3. 在main.m中编写代码(如果使用c接口,请将main.m更改为main.mm以支持c / cpp接口)。
  4. 使用连接的iPhone进行编译,选择真实的机器(不要使用模拟器)。
  5. 现在,检查您的Products / xxx.app,在finder中显示,然后显示包装内容。查找可执行二进制文件,该文件与xxx.app相同。
  6. 将该可执行二进制文件复制到一个文件夹,如果需要,请对该文件签名。
  7. 将该可执行二进制文件复制到您的iPhone,终端命令如下:scp xxx root@yourDeviceip:/usr/bin(或者您可以使用某些Mac软件将其复制到您的iPhone)。
  8. ssh root@yourDeviceIpcd /usr/bin,请使用以下命令:chmod +x xxx赋予文件可执行权限(xxx是fileName)。
  9. 现在,只需像其他人一样使用命令行工具即可。

对于那些想要签署可执行二进制文件的人,您可能想要这样做:

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>com.apple.springboard.debugapplications</key>
        <true/>
        <key>get-task-allow</key>
        <true/>
        <key>task_for_pid-allow</key>
        <true/>
        <key>run-unsigned-code</key>
        <true/>
        <key>platform-application</key>
        <true/>
    </dict>
</plist>

将上述内容另存为ent.xml与可执行二进制文件位于同一文件夹中,然后使用ldid对其进行签名,命令为:ldid -Sent.xml xxx