問題爆發(fā)
這次疫情來的十分突然圾亏,公司也是緊急改成遠(yuǎn)程辦公踪栋。由于疫情爆發(fā)在春節(jié)期間趾唱,我們組所有同事都已經(jīng)回家休假,導(dǎo)致沒有成分準(zhǔn)備遠(yuǎn)程辦公的開發(fā)環(huán)境站欺,只能臨時(shí)想辦法解決遠(yuǎn)程開發(fā)問題姨夹。
我相信很多小伙伴和我們一樣纤垂,由于一些歷史問題,導(dǎo)致無法使用模擬器調(diào)試代碼磷账。但是遠(yuǎn)程情況下又無法正常使用真機(jī)調(diào)試峭沦,編寫界面、解決崩潰問題成為一件十分棘手的問題逃糟。
分析問題
方案1:手動(dòng)打包+分發(fā)平臺(tái)+真機(jī)(不推薦)
相信很多iOS開發(fā)者都知道上述流程吼鱼,首先XCode編譯通過,用Payload壓縮包生成ipa文件绰咽,然后放到fir菇肃,再通過真機(jī)下載查看頁面。
最初我們也是簡單暴力采取該方案取募,但是第一天就暴露了以下問題:
流程十分繁瑣琐谤,周期長,調(diào)試界面需要花費(fèi)大量時(shí)間
原本遠(yuǎn)程開發(fā)就卡成幻燈片玩敏,如此操作更是雪上加霜
崩潰問題無法通過斷點(diǎn)調(diào)試斗忌,盲敲代碼嚴(yán)重影響質(zhì)量
方案2:電腦遠(yuǎn)程操控真機(jī)(越獄+Veency)
在經(jīng)歷過方案1的痛苦后,我們很快就想到該方案旺聚,如果電腦端能夠直接操控手機(jī)织阳,只需要讓在公司的同事幫忙插上數(shù)據(jù)線就能遠(yuǎn)程真機(jī)調(diào)試。
經(jīng)過大量的資料搜索砰粹,發(fā)現(xiàn)大部分第三方軟件都只能操控安卓手機(jī)唧躲。不過最后我們還是發(fā)現(xiàn)一個(gè)可行方案:越獄+Veency。該方案有如下好處:
去掉iphone密碼插上數(shù)據(jù)線就能真機(jī)調(diào)試碱璃,流程簡單**
本質(zhì)上與正常真機(jī)調(diào)試無差別
解決問題
下面我將從越獄開始描述下具體實(shí)施過程:
準(zhǔn)備環(huán)境:
iOS9-iOS10設(shè)備(Veency目前不支持iOS11以上)
越獄軟件ipa包 (自行網(wǎng)上下載)
重簽名
由于Apple的真機(jī)證書驗(yàn)證策略弄痹,從網(wǎng)站上下載的ipa包大概率無法直接安裝。運(yùn)氣好可以下載到不掉簽的包厘贼,但是開發(fā)者或者商販為了保護(hù)企業(yè)證書界酒,大多7天一換,7天后都會(huì)掉簽無法使用嘴秸。由于我的設(shè)備無法滿足完美越獄毁欣,關(guān)機(jī)重啟后會(huì)失去越獄環(huán)境,需要通過軟件恢復(fù)岳掐。因此我們需要將越獄軟件包重簽名凭疮,保證其一直有效。
首先我們需要去官網(wǎng)給軟件創(chuàng)建一個(gè)Identifiers
然后使用自己的個(gè)人開發(fā)證書創(chuàng)建開發(fā)環(huán)境的Profile
串述。將證書执解、描述文件下載到本地,證書雙擊添加到鑰匙串。
接下來就需要下載重簽名工具iReSign衰腌。
GitHub地址:https://github.com/maciekish/iReSign
如上圖所示新蟆,第一欄填寫越獄包的路徑,第二欄填寫描述文件路徑右蕊,第三欄可以不填會(huì)自動(dòng)生成琼稻,第四欄填寫上述注冊(cè)的id,第五欄選擇自己的證書饶囚。點(diǎn)擊重新簽名就完成了帕翻。
越獄
目前越獄工具大多都是一鍵越獄,因此這里無需累述萝风,大家可以根據(jù)自己下載的工具教程進(jìn)行越獄嘀掸。
安裝及配置Veency
越獄完成后點(diǎn)開Cydia,在搜索欄中搜索Veency就可以自行下載安裝了规惰。剛越獄成功的手機(jī)需要連上外網(wǎng)睬塌,等Cydia自行添加源后就能搜索到。
下載完成后卿拴,在設(shè)置中找到Veency欄衫仑,按如下圖所示配置,輸入一個(gè)vnc訪問密碼堕花。
接下來只要將設(shè)備和電腦連接同一局域網(wǎng),然后在電腦瀏覽器中輸入vnc://設(shè)備ip粥鞋,再輸入剛才設(shè)置的密碼缘挽,就能通過屏幕共享軟件連接并控制移動(dòng)設(shè)備,于是就能遠(yuǎn)程操作手機(jī)進(jìn)行真機(jī)調(diào)試?yán)病?/p>
screendump(支持到iOS14) 21-12-13日更新
最近杭州疫情又爆發(fā)了呻粹,又有小伙伴被關(guān)在家隔離壕曼。所以這個(gè)工具又排上用場了。之前說的Veency只支持iOS9和iOS10 等浊,這種機(jī)型已經(jīng)很遙遠(yuǎn)了腮郊。所以這里再介紹一個(gè)越獄軟件,支持到iOS14筹燕,用法差不多,網(wǎng)上資料太少轧飞,搜半天才找到希望能幫助更多人。名為screendump撒踪。下載cydia源:http://julioverne.github.io/
ios14 https://apt.aptso.cn/
總結(jié)
使用Venncy遠(yuǎn)程操控可能會(huì)有些卡頓过咬,但是原本遠(yuǎn)程開發(fā)就卡成幻燈片,這點(diǎn)卡頓幾乎可以忽略制妄。