pxl安裝包通常包含3個組件:
 
PxlPkg.plist記錄程序文件的存放位置、所有者、權限以及軟件標識等信息;PkgScript文件夾,存放安裝和卸載腳本;
 
PxlPkg.plist文件的開頭通常是CFBundleIdentifier,記錄著軟件的唯一標識,以和其他軟件進行區(qū)分。RDPxlPackageVersion則記錄軟件版本。RDPxlPackageFireware被用來記錄可以運行的固件版本。其余還有一些鍵值是用來記錄軟件介紹、網(wǎng)址、作者信息等數(shù)據(jù)。
 
除了軟件標識、軟件版本和可用固件版本以外,PxlPkg.plist的核心部分就是RDPxlPackageFiles和RDPxlPackagePostflight兩項。RDPxlPackageFiles記錄了程序文件應該被復制到的路徑,并提供了是否覆蓋的參數(shù):overwrite。而RDPxlPackagePostflight則記錄程序文件應該被賦予的所有者和權限,分別以chown和chmod命令來實現(xiàn)。另外,對于含有安裝/卸載腳本的pxl來說,還會以sh命令執(zhí)行相應的腳本Postflight和Preremove。
 
PkgScript通常包含兩個文件,安裝后執(zhí)行的腳本Postflight和卸載前執(zhí)行的腳本Preremove,這兩個腳本就是標準的LinuxShellScript,以sh命令執(zhí)行。
 
各類安裝包的特點及其安裝、卸載方法:
 
一、deb的特點
 
豐富的資源:Cydia上本身就不少,更何況任何格式的安裝包都可以轉換為deb。相對方便的在線購買模式:CydiaStore,不過盡管沒有AppStore的5臺設備的限制,但對國內用戶來說,付款方式比較困難。破解難度較大,沒有使用AppStore的驗證方式,所以必須將驗證和防破解措施加入程序里面,這樣就比較難破解,對軟件開發(fā)者來說是個好事。完善的Unix文件系統(tǒng)支持:無需以命令設置文件的權限、所有者和用戶組(當然也可以以腳本來設置)。
 
完善的腳本支持:5個腳本依照安裝和卸載的先后順序執(zhí)行,可以提供更多選擇。比如備份還原操作,可以在preinst中備份文件,而在postrm中還原文件,嚴格的依賴關系:deb遵循嚴格的依賴關系(于Depends和Pre-Depends指定),可以確保軟件運行所必需的組件。在線安裝的時候會自動安裝所依賴的軟件包。卸載時也很重要,比如軟件包A依賴于B,當卸載B的時候會提示A依賴于B,卸載掉B的話會導致A不能用,這樣可以確保系統(tǒng)的完整性和穩(wěn)定性。
 
完全權限:由于deb必須以最高權限root的身份運行,deb可以對系統(tǒng)任何位置進行操作,換句話說,deb擁有對整個系統(tǒng)的完全控制,因此deb安裝包軟件可以實現(xiàn)很多ipa不能實現(xiàn)的功能。相對簡單的獲取方式(在線或離線)和安裝方式,也不用擔心在不同機器上同步會刪掉程序的問題。
 
安裝相對簡單:其實無論是哪種安裝包,安裝方法都不算很復雜,只不過deb稍微復雜一些。
裝機