iOS UI調試神器,插件injection for Xcode使用方法

項目愈來愈大,代碼編譯時間愈來愈長,你是否是早已經厭倦了改一點點UI佈局就要從新編譯一次項目的過程,咱們一分鐘幾百萬上下的,怎能被編譯浪費掉珍貴的時間。使用injectionforxcode這款插件,提升咱們編程時的效率。git

先上插件的GitHub地址:injectionforxcodeGitHub地址github

官方演示

看看強大的效果,即寫即看到效果:編程

安裝

咱們能夠經過Alcatraz來安裝,若是安裝成功沒有找到多出來的兩個選項,咱們經過下載插件-->打開工程,編譯後,重啓Xcode。xcode

再次打開Xcode咱們能夠看到Product菜單下多出了兩個選項iphone

試驗

- (void)viewDidLoad {
    [super viewDidLoad];
    
    self.view.backgroundColor = [UIColor whiteColor];
    [self setupTableView];
}

-(void)injected{
    [self viewDidLoad];
}

要注意的是:injected,Corl + = 更新界面後,就能夠看到效果。ide

真機調試

另外,咱們想要真機調度,網上說添加腳本這些,我試了都不行。另外找到了解決方法佈局

因爲咱們在模擬器裏運行了,能夠看到目錄下多了一個文件夾。ui

第一步:

點擊」Patch Project for Injection「,插入真機的相關代碼。若是下次咱們不須要真機調試了,直接點擊」Revert Injection's Changes「就能夠消除了。spa

插入的相關代碼,咱們能夠在main.m文件中看到,以下圖:插件

第二步 方法一:

咱們Crol+=運行後,發現報錯,以下:

基本意思是:真機調試,須要用戶證書,但咱們的系統上綁定了多個證書,讓咱們在Debug-iphoneos下綁定一個咱們須要調試的真機證書便可。

咱們打開文件目前,會發現多了一個」iOSInjectionProject「文件夾,咱們須要找的是identity.txt這個文件

打開後,看到

以後,咱們在選中綁定須要調試的真機證書,直接command + c 複製,手打的須要注意空格。

粘貼到identity.txt下。注意不要手敲,有空格的。

保存後,咱們再control + =,已經成功。

第二步 方法二:

除了手動改identity.txt方式以外,還能夠經過新增運行腳本方式。

一、先去 project-> Build Phases 添加一個 Run script,內容爲:

echo "$CODESIGNING_FOLDER_PATH" >/tmp/"$USER.ident" && echo "$CODE_SIGN_IDENTITY" >>/tmp/"$USER.ident" && exit;


二、修改 工程 target 的 Code Siging ,記住只修改 Any iOS SDK 後面的兩個爲 跟咱們Xcode 中同樣。

三、而後到咱們的工程目錄,給 iOSInjectionProject 這個文件夾刪掉。刪掉以後,com + shift + k, clean 一下工程,在運行到手機上,沒什麼問題的話,真機上就能熱調試了。

四、咱們打開identity.txt文件,看到裏面自動幫咱們添加上了證書。

報錯處理 

1.沒有選中要編譯的文件。咱們須要選擇當前須要調試的controller文件。

2.運行沒有效果。加上:

-(void)injected{
    [self viewDidLoad];
}

 3.真機調試,仍是報證書不對,如:

請檢查一下,你的須要真機調試的證書,是否是安裝了兩次,若是安裝了兩次,也會提示說證書選擇有誤,請只保留其中一個。

4.IP地址不正確

 

這個錯誤指的是沒有權限操做IP。

咱們在真機調試的時候,會在main.m中插入如下代碼:

第一個和第二個IP地址,指向的是外網的IP。外網的IP,咱們是沒有權限操做的,只須要把這兩個IP刪除掉便可。如

static const char *_inIPAddresses[] = {"192.168.1.105", "127.0.0.1", 0};

 

破解處理

該插件只容許咱們使用兩週,若是使用到期,咱們只須要刪除 iOSInjectionProject 這個文件夾,從新運行又可使用了。

相關文章
相關標籤/搜索