越獄開(kāi)發(fā)整理文檔(一)配置theos環(huán)境與第一個(gè)Demo

剛開(kāi)始配置Theos環(huán)境的時(shí)候各種踩坑刁品,裝好了又卸載泣特,各種問(wèn)題,各種嘗試之后總結(jié)出了一下的方法挑随,也是收集各方大神的資料綜合状您,做一個(gè)記錄方便以后自己使用也分享給各位。

1.如果有多個(gè)Xcode選擇一個(gè)Xcode路徑,只有一個(gè)Xcode可忽略此步驟

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

2.下載Theos

export THEOS=/opt/theos ? 配置環(huán)境變量

sudo git clone git://github.com/DHowett/theos.git $THEOS ?下載Theos

注:后面使用可能還需要更新Theos

3.下載ldid

http://joedj.net/ldid?

復(fù)制下載的ldid到/opt/theos/bin

sudo chmod 777 /opt/theos/bin/ldid ?給ldid賦權(quán)限

4.配置CydiaSubstrate

用iFile連上iPhone,將iOS上

/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate

拷貝到電腦上然后改名為libsubstrate.dylib?

拷貝到/opt/theos/lib 中.

5.配置dkpg

sudo port install dpkg

如果是下載的dpkg-deb需要執(zhí)行 sudo chmod 777 /opt/theos/bin/dpkg-deb? 給dpkg-deb賦權(quán)限

二膏孟、創(chuàng)建Tweak工程

1.cd到某一個(gè)自己想要保存的文件夾執(zhí)行下面語(yǔ)句

/opt/theos/bin/nic.pl

注:這里可能會(huì)報(bào)錯(cuò)出現(xiàn)Theos過(guò)期需要執(zhí)行g(shù)it指令眯分,有提示,cd到these文件夾下柒桑,然后根據(jù)提示輸入sudo git submodule update --init --recursive 【命令根據(jù)提示粘貼】執(zhí)行完這句話再回到創(chuàng)建工程/opt/theos/bin/nic.pl步驟

出現(xiàn)下面這個(gè)

NIC 2.0 - New Instance Creator

------------------------------

[1.] iphone/activator_event

[2.] iphone/application_modern

[3.] iphone/cydget

[4.] iphone/flipswitch_switch

[5.] iphone/framework

[6.] iphone/ios7_notification_center_widget

[7.] iphone/library

[8.] iphone/notification_center_widget

[9.] iphone/preference_bundle_modern

[10.] iphone/tool

[11.] iphone/tweak

[12.] iphone/xpc_service

Choose a Template (required): 11 ?【選擇你想要構(gòu)建的工程類型弊决,這里選的Tweak】

Project Name (required): tweak ?【工程名】

Package Name [com.yourcompany.tweak]: com.app.tweak 【包名,相當(dāng)于bundleId】

Author/Maintainer Name [apple2015]: bean 【作者】

[iphone/tweak] MobileSubstrate Bundle filter [com.apple.springboard]: com.apple.spingboard?

[iphone/tweak] List of applications to terminate upon installation (space-separated, '-' for none) [SpringBoard]: SpringBoard

Instantiating iphone/tweak in tweak/...

Done.

工程目錄

2.修改Makefile

THEOS_DEVICE_IP = 192.168.1.128 【iP改成自己手機(jī)的iP魁淳,手機(jī)和電腦必須在同一wifi下】

ARCHS = armv7 arm64

include $(THEOS)/makefiles/common.mk

TWEAK_NAME = tweak

tweak_FILES = Tweak.xm? 【tweak這里的名字是工程名】

include $(THEOS_MAKE_PATH)/tweak.mk

after-install::

install.exec "killall -9 SpringBoard"

3.修改Tweak.xm

#import <UIKit/UIKit.h>

#import <SpringBoard/SpringBoard.h>

%hook SpringBoard

-(void)applicationDidFinishLaunching:(id)application {

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Welcome"

message:@"First Blood"

delegate:nil

cancelButtonTitle:@"OK"

otherButtonTitles:nil];

[alert show];

%orig;

}

%end

注:這里代碼的意思是勾出springboard的初始化方法飘诗。

之所以勾springboard是因?yàn)樗窃姜z手機(jī)一直在后臺(tái)運(yùn)行的東西。

4.配置環(huán)境變量

export THEOS=/opt/theos/

export THEOS_DEVICE_IP=192.168.1.128 【手機(jī)的ip地址】

注:在之后執(zhí)行make package install命令中出現(xiàn)了tool.mk notfound 或者xx.mk notfound就需要配置這個(gè)東西了界逛。

5.打包安裝工程到手機(jī)

cd 到有makeFile的文件路徑下

make package install?

也可以分解步驟一步一步走

make

make package

make install

注:如果出現(xiàn)錯(cuò)誤昆稿,一個(gè)可能是剛剛第4步提到的錯(cuò)誤,還有一個(gè)就是第1步提到的錯(cuò)誤息拜,進(jìn)行相應(yīng)的修改即可

這里還會(huì)提示你輸入兩次密碼貌嫡,如果手機(jī)沒(méi)有設(shè)置過(guò)密碼的話,就是初始的密碼:alpine

執(zhí)行完成你就等著手機(jī)重新加載该溯,然后露出你得意的微笑岛抄。

三、小總結(jié)

1.如果你安裝完成之后發(fā)現(xiàn)/opt/theos/vendor/這里面是空的狈茉,就說(shuō)明需要執(zhí)行第二步驟的第1步注意事項(xiàng)夫椭;

2.如果你發(fā)現(xiàn)make成功之后還想make 發(fā)現(xiàn)報(bào)了Nothing to be done for `internal-library-compile,那就把你剛才創(chuàng)建出來(lái)的obj刪掉和packages刪掉 , 然后顯示隱藏文件, 你就會(huì)發(fā)現(xiàn)和obj同一個(gè)目錄有一個(gè).theos , 吧.theos里面的東西刪掉就好了

或者最狠的就是重新開(kāi)始工程氯庆,或者make clean

3.有正向經(jīng)驗(yàn)的小伙伴可以簡(jiǎn)單理解為makefile相當(dāng)于plist文件蹭秋,Tweak.xm相當(dāng)于要寫(xiě)代碼的工程。


四堤撵、開(kāi)啟你的逆向之路吧H侍帧!实昨!

注:以上提到的文件如需要下載的可以用我的github下載洞豁,好用的話給個(gè)start吧。

https://github.com/BeanMan/tweakPackage


參考文章:http://blog.csdn.net/app_ios/article/details/52596230

http://www.reibang.com/p/3c1d71c880ca


站在巨人的肩膀上才有這些總結(jié)

菜鳥(niǎo)走向大牛荒给,大家共同前進(jìn)丈挟,如果覺(jué)得不錯(cuò),請(qǐng)給個(gè)贊/關(guān)注志电。

一起交流學(xué)習(xí)曙咽,有問(wèn)題隨時(shí)歡迎聯(lián)系,郵箱:383708669@qq.com

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末挑辆,一起剝皮案震驚了整個(gè)濱河市例朱,隨后出現(xiàn)的幾起案子孝情,更是在濱河造成了極大的恐慌,老刑警劉巖洒嗤,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件咧叭,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡烁竭,警方通過(guò)查閱死者的電腦和手機(jī)菲茬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)派撕,“玉大人婉弹,你說(shuō)我怎么就攤上這事≈蘸穑” “怎么了镀赌?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)际跪。 經(jīng)常有香客問(wèn)我商佛,道長(zhǎng),這世上最難降的妖魔是什么姆打? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任良姆,我火速辦了婚禮,結(jié)果婚禮上幔戏,老公的妹妹穿的比我還像新娘玛追。我一直安慰自己,他們只是感情好闲延,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布痊剖。 她就那樣靜靜地躺著,像睡著了一般垒玲。 火紅的嫁衣襯著肌膚如雪陆馁。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天合愈,我揣著相機(jī)與錄音叮贩,去河邊找鬼。 笑死想暗,一個(gè)胖子當(dāng)著我的面吹牛妇汗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播说莫,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼寞焙!你這毒婦竟也來(lái)了储狭?” 一聲冷哼從身側(cè)響起互婿,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎辽狈,沒(méi)想到半個(gè)月后慈参,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡刮萌,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年驮配,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片着茸。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡壮锻,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出涮阔,到底是詐尸還是另有隱情猜绣,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布敬特,位于F島的核電站掰邢,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏伟阔。R本人自食惡果不足惜辣之,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望皱炉。 院中可真熱鬧召烂,春花似錦、人聲如沸娃承。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)历筝。三九已至酗昼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間梳猪,已是汗流浹背麻削。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工溯捆, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留逞盆,地道東北人稽揭。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓云挟,卻偏偏與公主長(zhǎng)得像攻柠,于是被迫代替她去往敵國(guó)和親港柜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子吃谣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容