想提取在APP STORE上某些應(yīng)用得資源圖片時(shí),我們可以通過(guò)iPhonePNG來(lái)獲取這些資源圖片,但用法稍微復(fù)雜。
其實(shí)iPhonePNG并不是反編譯得功能,只是ios得app解壓后會(huì)有模糊不清得資源圖片,這個(gè)工具可以將其還原。
(并不能所有圖片都還原,有得應(yīng)用存在部分圖片無(wú)法還原得情況)
第一步 下載iPhonePNG
http://pan.baidu.com/share/link?shareid=4164109851&uk=85241834
我下載解壓縮后將其放在了Finder得應(yīng)用程序中,放哪里并不是必須,但要記住路徑。
查看路徑,選中iphonepng中的某個(gè)文件,郵件查看顯示簡(jiǎn)介,該目錄為/Applacations/iPhonePNG
第二步 修改要編譯得文件路徑(以下出現(xiàn)得iphonename為你得mac名)
雙擊.php文件用xcode打開(kāi),修改第二行,$path的路徑,該程序?yàn)榇薷膱D片和修改后圖片放置一個(gè)目錄,所以只修改path部分就可以。
php文件代碼如下:
<?php
$path ='/Users/iphonename/Desktop/testimage/Payload/UrlWebViewForIpad';
//'/iPhone/Resource/ColorSchemer 1.1/Payload/ColorSchemer';
$dir = opendir($path);
$cmd = '"' . dirname(__FILE__) . '/iPhonePNG"';
$files = array();
while($file = readdir($dir)) {
$ext = substr(strrchr($file, '.'), 1);
//echo "$file\n";
if($ext == "png"){
$files[] = "\"$path/$file\"";
}
}
closedir($dir);
foreach($files as $file) {
exec("$cmd $file");
//echo "$cmd $file\n";
}
?>
第三步 從itunes上下載app
下載后可點(diǎn)擊下載得app查看顯示簡(jiǎn)介,路徑在/Users/iphonename/Music/iTunes/iTunes Media/Mobile Applications
所有應(yīng)用均在此目錄。
從此目錄下將ipa文件拷貝到桌面后,將后綴名改為zip并解壓,如果解壓后得目錄中沒(méi)有縮略圖,則需要在子文件夾中繼續(xù)解壓,直到看到縮略圖。
第四步 還原圖片/提取資源文件圖片
將解壓縮的縮略圖復(fù)制入$path 路徑,運(yùn)行php腳本。
在iPhonePNG中雙擊同名執(zhí)行文件,會(huì)打開(kāi)一個(gè)類似于windows上控制臺(tái)得名為終端的程序如下
打開(kāi)后開(kāi)始敲命令運(yùn)行該文件。
1. control +c 結(jié)束目前所有命令(新打開(kāi)和忽略)
2. cd /Applactions/iPhonePNG 進(jìn)入iPhonePNG文件夾
3. php ./iPhonePNG.php 執(zhí)行該目錄下得修改$path后得php文件
執(zhí)行完畢去path目錄下即可查看到資源圖片。
終端程序中敲入命令后回車(chē)后得提示文案這里不做提示,反饋信息較為簡(jiǎn)單,容易理解是否正確進(jìn)入文件夾,是否執(zhí)行成功。
假設(shè)你的圖片在./img目錄下,想轉(zhuǎn)換到 ./decode 目錄,
在終端執(zhí)行:
$ find ./img -name "*.png" -exec /Applications/iPhonePNG {} \;
默認(rèn)將轉(zhuǎn)換后的圖片添加后綴后放在原圖片相同目錄,把他批量移動(dòng)出來(lái):
$ find ./img -name "*Decoded.png" -exec mv {} ./decode \;