前言
本文主要講述怎樣獲得其他優(yōu)秀的iOS應(yīng)用的圖片資源废封,以及解決了12.7版本的iTunes不能下載應(yīng)用的問題穆役。
最近看一個(gè)開發(fā)的視頻术奖,作者為了模仿一個(gè)很流行的app, ‘‘盜取’’了這個(gè)app的所有圖片现柠,看的我很驚訝裆赵,心想這都可以逢并,被這波操作給 安排 了之剧。?
下面我就給大家分享一下我總結(jié)的經(jīng)驗(yàn)。
一. 首先砍聊,我們必須要獲得想要資源的應(yīng)用ipa文件
ipa是Apple程序應(yīng)用文件iPhoneApplication的縮寫背稼。簡單來說,Mac 下的iphone軟件玻蝌,就像是 Windows 下的綠色軟件一樣蟹肘,解壓后即可使用词疼,不需要安裝,卸載的話也只用刪除程序文件即可帘腹。熟悉IOS開發(fā)的都應(yīng)該了解贰盗,當(dāng)你想要上傳內(nèi)測版本的app到蒲公英或者是fir上時(shí),最終上傳的都是后綴為.ipa的文件阳欲,這個(gè)文件里包含了該應(yīng)用的所有信息舵盈,只是蘋果把它壓縮整包了,一部分是不能讓我們看到的球化,例如源碼秽晚。還有一部分是我們可以看到的,那就是該應(yīng)用的所有的圖片資源筒愚。
iOS APP中所有資源?=?Assets.car?+?.api文件解壓
1. 先以iTunes為例來獲取應(yīng)用的ipa文件
當(dāng)你Mac上的iTunes為12.7及以上時(shí)爆惧,你會(huì)發(fā)現(xiàn)蘋果將iTunes里的應(yīng)用下載的功能移除掉了。這我就日了狗了锨能,那我該怎么下載應(yīng)用的ipa文件呢? 在網(wǎng)上說有很多種軟件可以下載,例如PP助手芍耘,iTools址遇,但是我都試了,都不太好用斋竞。最終我還是決定繼續(xù)用iTunes來實(shí)現(xiàn)倔约。
在論壇里找到一個(gè)解決的辦法非常好用,既然12.7移除了坝初,那我們就下載沒有移除的版本唄浸剩。
① 前往Apple Developer的下載管理界面
按照上圖的方式下載版本為12.6的iTunes,這個(gè)版本就是沒有移除應(yīng)用下載功能的鳄袍。
② 下載完成之后绢要,當(dāng)你想安裝的時(shí)候會(huì)發(fā)現(xiàn),提示 已經(jīng)有更高版本的iTunes了 拗小,既然想要套狼重罪,那就不能舍不得孩子。想要安裝低版本的iTunes哀九,前提必須將高版本的iTunes刪除剿配。
③ 當(dāng)你想要?jiǎng)h除高版本的iTunes時(shí),你用正常刪除軟件的方式是不行阅束。系統(tǒng)會(huì)提示你不允許你這樣操作呼胚。那么我換一種方式,用root權(quán)限刪除呢息裸。
1.0 打開終端
2.0 切換到root權(quán)限? 輸入 $? sudo -i? ?回車 輸入電腦密碼(password)
3.0 進(jìn)入到Applications目錄下 輸入 $??cd /Applications/?
4.0 展示所有應(yīng)用的列表 輸入 $? ls
紅框內(nèi)的iTunes.app就是我們想要?jiǎng)h除的應(yīng)用
5.0 嘗試刪除iTunes.app 輸入 $ rm -rf iTunes.app? ?回車 會(huì)提示?Operation not permitted 同樣是操作不被允許蝇更,這個(gè)是Mac OS對(duì)系統(tǒng)的安全防護(hù)沪编。
下面我們需要暫時(shí)接觸安全防護(hù)限制策略才能完成刪除的操作,csrutil disable命令可以解除此限制簿寂,但是通過命令詳情可以看到這種操作需要在恢復(fù)模式下才能使用漾抬。
6.0?重啟電腦,按COMMAND+R組合鍵進(jìn)入恢復(fù)模式常遂,找到【實(shí)用工具】-->【終端】纳令,在終端窗口中輸入命令csrutil disable解決權(quán)限限制。
7.0 執(zhí)行完上述操作之后克胳,重啟電腦 平绩,重復(fù)上述1.0, 2.0漠另,3.0捏雌,4.0,5.0操作笆搓,如果按照上述所說的操作的話性湿,你會(huì)發(fā)現(xiàn)iTunes已經(jīng)成功的被刪除了。刪除成功之后满败,不用忘了重復(fù)6.0的操作 將Mac OS的權(quán)限限制恢復(fù)肤频。在終端中輸入?csrutil enable 恢復(fù)權(quán)限設(shè)置。重啟電腦算墨,繼續(xù)往后操作宵荒。
8.0? 此時(shí),你如果安裝12.6版本的iTunes的話净嘀,又會(huì)提示你一個(gè)錯(cuò)誤問題报咳。說是無法讀取文件“iTunes Library.itl”,它的意思就是沒有刪干凈唄挖藏。此時(shí)一定要點(diǎn)擊退出暑刃。
9.0 打開Finder 搜索iTunes Library.itl,會(huì)搜到一個(gè)結(jié)果膜眠,這個(gè)就是問題文件稍走,把它一到廢紙簍就好咯。
10.0 刪除上述文件之后柴底,你再安裝12.6的iTunes婿脸,終于成功了。大功告成柄驻。
2. iTunes的版本問題解決了狐树,那么Get ipa文件就是 so easy了
① 這里我們以思聰?shù)??直播為例,首先去iTunes找到該應(yīng)用鸿脓,點(diǎn)擊下載抑钟。下載完成之后涯曲,你可以在資料庫里找到。
②? 找到剛剛下載好的??直播在塔, 右鍵 showFinder一下幻件, 就會(huì)找到該應(yīng)用的ipa文件了。
③ 首先給ipa文件解壓蛔溃, 會(huì)得到一個(gè)同名的文件夾 绰沥,依次打開? ? 熊貓直播 4.0.14? ? ->? ?Payload? ?->? ?PandaTV-ios? 點(diǎn)擊右鍵 顯示包內(nèi)容。
④ 上圖中我們僅僅得到了部分的圖片例如 icon 啟動(dòng)圖了贺待。大部分的圖片都被壓縮到了上面的紅框的文件中 Assets.car徽曲,下面我們就試著把Assets.car解壓。
二. 前面我們已經(jīng)把ipa文件以及其中Assets.car得到了麸塞,下面我們就開始解壓Assets.car
1. 在這里秃臣,我用一個(gè)第三方的框架來解壓它,它叫cartool哪工,還有很多其他的方法奥此,我就不一一列舉了。
① 下載完成雁比,打開文件夾 打開.xcodeproj
② 運(yùn)行cartool項(xiàng)目?
③ 運(yùn)行成功得院,生成cartool工具
④? 打開終端,先拖入cartool的路徑章贞,然后再拖入Assets.car的路徑,最后拖入存放圖片文件夾路徑非洲。(三者之間用空格隔開鸭限,終端一般會(huì)自動(dòng)空格)
⑤ 打開圖片文件夾,圖片全部加載進(jìn)來两踏。圓滿完成败京!