个人原创,转帖请注明来源:http://blog.csdn.net/jailbreaker

前面讲到使用 ,使用iOSOpenDev开发SpringBoard的Tweat,非常易用,但必须知道实质还是依靠Theos来创建,所以必须学会用Theos直接创建Tweat。

首先,通过theos/bin/nic.pl生成一个Tweat项目,步骤如下:

1.设置环境变量    export THEOS=/opt/theos

2.终端cd进入打算保存项目的文件夹

3.创建工程,终端输入 $THEOS/bin/nic.pl 此时会看到如下信息,进行配置。

Choose a Template (required): 5 //我们选择第5个,也就是tweak项目

Project Name (required): myTweatByTheos  //项目名称

Package Name [com.yourcompany.mytweatbytheos]:  //项目的bundle 标识

Author/Maintainer Name [hf]:  //作者

[iphone/tweak] MobileSubstrate Bundle filter [com.apple.springboard]:  //Tweat的hook对象

[iphone/tweak] List of applications to terminate upon installation (space-separated, '-' for none) [SpringBoard]:  //安装完需要重启的app

通过nic.pl创建工程默认是有5种类型,另外可以下载https://codeload.github.com/DHowett/theos-nic-templates/zip/master.zip 解压出5个.tar保存至$THEOS/templates/iphone目录下,总要一共就有10种类型。

执行完毕生成项目:

项目下的Tweak.xm ,就是我们输入hook代码的文件,现在的.xm内部现已经存有代码模版了。把之前帖子里iOSOpenDev生成的Tweat项目中.xm的内容复制过来。再把iOSOpenDev目录下lib目录中的libsubstrate.dylib 以及 include 目录下的substrate.h 分别复制到Theos目录下的lib和include中去。

打开makefile文件,因为我们要使用UIKit库,增加一行代码 myTweatByTheos_FRAMEWORKS = UIKit,见图

终端 make 编译下,如果没有error接着使用make package打包deb,makefile的设置还是比较多的,比如如果机子里有n个sdk,也可以指定sdk,还可以指定你的iOS设备的ip地址,打包后通过 make install安装。

运行效果图看 [iOS越狱开发 之七]使用iOSOpenDev开发SpringBoard的Tweat

iOS安全攻防(九)使用iOSOpenDev开发SpringBoard的Tweat相关推荐

  1. iOS安全攻防(九)使用Theos开发SpringBoard的Tweat

    个人原创,转帖请注明来源:cnblogs.com/jailbreaker 前面讲到使用 [iOS越狱开发 之七]使用iOSOpenDev开发SpringBoard的Tweat,非常易用,但必须知道实质 ...

  2. iOS安全攻防(八)Thoes的Logos简介

    个人原创,转帖请注明来源:cnblogs.com/jailbreaker 上一篇帖子,讲到使用iOSOpenDev开发基于Theos的Tweak,功能Hook了SpringBoard的 -(void) ...

  3. IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法...

    IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法 Author:hmjiangqq Email:jiangqqlmj@163.com ...

  4. iOS安全攻防(二十三):Objective-C代码混淆

    iOS安全攻防(二十三):Objective-C代码混淆 class-dump可以很方便的导出程序头文件,不仅让攻击者了解了程序结构方便逆向,还让着急赶进度时写出的欠完善的程序给同行留下笑柄. 所以, ...

  5. iOS安全攻防-李文瀚-专题视频课程

    iOS安全攻防-343人已学习 课程介绍          关于iOS应用开发的安全,这块内容可无限的深入和延展 1.苹果的签名机制 2.代码注入的原理 3.HOOK的原理剖析 4.防护进阶 所有的防 ...

  6. 一个Java开发h5牌九棋牌网站开发细节

    今天我们一起来做个简单有趣的实验.熟悉Java的童鞋,对h5牌九棋牌网站开发(Q1687054422)前往h5.fanshubbs.com类应该不陌生.不记得的童鞋,先回忆下. 实验一 我们先看下下面 ...

  7. unity3D埃及探险游戏源码,支持安卓+IOS双端 unity2019 C#语言开发

    unity3D埃及探险游戏源码,支持安卓+IOS双端 unity2019 C#语言开发.完整的源码可直接运营.拿来学习研究和二次开发都很不错. 源码下载 unity3D埃及探险游戏源码C#语言开发.完 ...

  8. iOS动手做一个直播app开发(代码篇)

    iOS动手做一个直播app开发(代码篇) ###开篇 好久没写简书,因为好奇的我跑去学习直播了,今天就分享一下我的感慨. 目前为止直播还是比较热点的技术的,简书,git上有几篇阅读量和含金量都不错的文 ...

  9. 初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比(一家之言)

    初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比 初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比 发布于:2013-07-18 11:00阅读数:1984 ...

最新文章

  1. Redis 数据结构-字典源码分析
  2. (转载)(c#)数据结构与算法分析 --数组、向量和表
  3. 昵图网服务器系统资源不足,Win7系统提示系统资源不足警告怎么办? - 爱绿豆...
  4. Kattis之旅——Prime Reduction
  5. java cmd 等待输入_JAVA:调用cmd指令(支持多次手工输入)
  6. 转载:理解机器学习中的偏差与方差
  7. 使用WebRTC开发Android Messenger:第1部分
  8. SpringBoot2.0基础案例(01):环境搭建和RestFul风格接口
  9. PyTorch入门-词向量
  10. ribbon设置权重_spring cloud gateway+ribbon 组合指定版本权重分流(简易灰度发布实现)...
  11. linux grep的信息不全,Linux下grep显示前后几行信息方法介绍
  12. 恒生电子Java开发岗的面试题汇总
  13. nohup启动jar_nohup命令详解
  14. 云计算世界里的企业级软件何去何从
  15. PHPExcel出现 Formula Error的解决方案
  16. c++thread里暂停线程_C语言如何正确的终止正在运行的子线程
  17. 修改linux系统的时间EDT和EST为CST
  18. mysql 基础语法3
  19. freertos使用基础
  20. filedownload实现

热门文章

  1. 一切为了阿凡达--电影博物馆排队事件
  2. 高效光伏硅片制造中的水基超声化学清洗
  3. 2016微软开发者大会 - 简洁收集
  4. 2-2-3-3、Atomic原子操作类详解
  5. 使用组策略添加删除本地用户和组的成员
  6. WPF 实现阴影效果(推酷网)
  7. jquery 竖向实现组织结构图,自定义样式
  8. 华为数通笔记-OSPF基础
  9. 专业解说之波分复用器原理与应用
  10. python制作图片贴纸,python - 如何将剪贴画放在matplotlib中的绘制数据后面 - SO中文参考 - www.soinside.com...