真正成功的theos环境配置

2023-11-01 21:18

本文主要是介绍真正成功的theos环境配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


学习并实战开发越狱后的IOS程序已经快两个月了,中文资料除了CocoaChina上有少数资料以外,其他地方还比较难找,所以这里翻译一点基础教程(文字功底不好,见谅~),希望能给读者带来帮助。

参考文章:

  • Jailbroken Development : Starter Pack
  • Beginning Jailbroken iOS Development – Getting The Tools
  • Theos/Getting Started

首先,要对IOS进行越狱开发,我们要先做好一些准备工作

  • 一台越狱后的IOS设备(iPad/iPhone/iTouch)
  • Mac OS X 10.6+ (或IOS 3.0+)
  • TheOS
  • Objective-C编程能力(起码也要开发过一点正常的IOS简单应用)

准备好这些以后,接下来我们就要开始了(大家肯定一眼就能看出,我们的重点是在TheOS上了,其实开发Jailbroken IOS app的方法有很多,但比较有名、比较系统化同时相对比较好用的就是TheOS了,因此本文以此为限)。

 

TheOS介绍

TheOS被设计为一个在基于Unix平台(Mac OS X、IOS…)和大多数的Linux平台下开发IOS程序的集成开发环境。说是集成开发环境,其实就是给我们准备好了一些代码模板、预置一些基本的Makefile脚本,我们还是要在Terminal(如果还不会用这个的话值得去学习一下)中完成一些关键操作。

 

安装TheOS(以Mac OS介绍)

因为TheOS必备的三个工具(subversion/git、curl和perl)在Mac OS下默认都已经存在,因此我们就不用费心去找这些东西了。接下来看步骤:

  1. 安装官方SDK(相信开发IOS应用的朋友们这个东西肯定已经不需要准备了)
  2. 打开Terminal,先设置一个环境变量(这个仅仅只是为了输入方便,不是必须的),命令如下(其中的路径就是你准备安装TheOS的位置,如果你没有更好的选择那就按照例子中的来吧):
    export THEOS=/opt/theos
  3. 接着,我们从网上下载最新的TheOS版本:
    svn co http://svn.howett.net/svn/theos/trunk $THEOS
    git clone git://github.com/DHowett/theos.git $THEOS
    (据说修改版本的thoes更好 git clone git://github.com/rpetrich/theos.git $THEOS)
  4. 按照上述命令,肯定绝大多数朋友会出现提示svn: Can’t make directory ‘/opt/theos’: Permission denied,这是因为/opt/theos这个路径需要管理员授权才有写权限。在命令名前田间sudo即可,重新输入后如下:
    sudo svn co http://svn.howett.net/svn/theos/trunk $THEOS

    输入密码回车,等待自动下载完成即可。

  5. 安装ldid(这是一个模拟签名的工具,需要单独下载),命令如下(因权限问题,本人对iphonedevwiki上的命令做了一些修改以达到目的):
    sudo curl -s http://dl.dropbox.com/u/3157793/ldid > /tmp/ldid
    sudo cp /tmp/ldid $THEOS/bin/
    sudo chmod +x $THEOS/bin/ldid
    rm /tmp/ldid

6、git clone git://github.com/rpetrich/iphoneheaders.git

好了,TheOS到这里就安装结束了,接下来,就可以开始IOS越狱开发之旅了。
  1. 打开Terminal(如果用上个阶段没有关闭的Terminal请直接跳转到第3步)
  2. 设置环境变量
    export THEOS=/opt/theos
  3. 进入你打算放置项目的文件夹
    cd ~/myprg
  4. 创建工程
    $THEOS/bin/nic.pl
  5. 此时会看到命令行中的文本提示如下:
    NIC 1.0 - New Instance Creator
    ------------------------------[1.] iphone/application[2.] iphone/library[3.] iphone/preference_bundle[4.] iphone/tool[5.] iphone/tweak
  6. 这里对这五种类型做个简单介绍,application是创建普通应用程序的,library是创建库文件,preference_bundle是创建设置束,tool是开发那种没有界面的,就好像hello world那种程序的,tweak就是最精华的部分了,我们这里姑且翻译为外挂程序,关于tweak的开发介绍我打算再单独开一篇文章用来描述。接着,根据提示,分别输入模版类型、工程名、包名、作者名等参数回车,等待初始化完成即可进入工程文件夹,编辑源文件了。如下:
    Choose a Template (required): 1
    Project Name (required): iPhoneDevWiki
    Package Name [com.yourcompany.iphonedevwiki]: net.howett.iphonedevwiki
    Authour/Maintainer Name [Dustin L. Howett]:
    Instantiating iphone/application in iphonedevwiki/...
    Done.

 

好了,起步教程就介绍到这里了,剩下的编码任务就看各位的了,至于你是要写hello world还是touch me那就是仁者见仁,智者见智了。

如果需要转载,大家记得把原文链接加上哦~Thx


转自:http://www.thising.com/blog/2012/01/ios%E8%B6%8A%E7%8B%B1%E5%BC%80%E5%8F%91%E8%B5%B7%E6%AD%A5%E6%95%99%E7%A8%8B/









这篇关于真正成功的theos环境配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/325807

相关文章

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

史上最全nginx详细参数配置

《史上最全nginx详细参数配置》Nginx是一个轻量级高性能的HTTP和反向代理服务器,同时也是一个通用代理服务器(TCP/UDP/IMAP/POP3/SMTP),最初由俄罗斯人IgorSyso... 目录基本命令默认配置搭建站点根据文件类型设置过期时间禁止文件缓存防盗链静态文件压缩指定定错误页面跨域问题

Gradle下如何搭建SpringCloud分布式环境

《Gradle下如何搭建SpringCloud分布式环境》:本文主要介绍Gradle下如何搭建SpringCloud分布式环境问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Gradle下搭建SpringCloud分布式环境1.idea配置好gradle2.创建一个空的gr

nginx负载均衡及详细配置方法

《nginx负载均衡及详细配置方法》Nginx作为一种高效的Web服务器和反向代理服务器,广泛应用于网站的负载均衡中,:本文主要介绍nginx负载均衡及详细配置,需要的朋友可以参考下... 目录一、 nginx负载均衡策略1.1 基本负载均衡策略1.2 第三方策略1.3 策略对比二、 nginx配置2.1

Android开发环境配置避坑指南

《Android开发环境配置避坑指南》本文主要介绍了Android开发环境配置过程中遇到的问题及解决方案,包括VPN注意事项、工具版本统一、Gerrit邮箱配置、Git拉取和提交代码、MergevsR... 目录网络环境:VPN 注意事项工具版本统一:android Studio & JDKGerrit的邮

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1