自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iPhone應(yīng)用程序 PXL格式程序開發(fā)實例操作

移動開發(fā) iOS
本文介紹的是iPhone應(yīng)用程序 PXL格式程序開發(fā)實例操作,PXL是國內(nèi)廣泛使用的一種iOS程序安裝包,他只能安裝于破解版的iPhone/iPad等設(shè)備上。

iPhone應(yīng)用程序 PXL格式程序開發(fā)實例操作,首先來了解一下PXL,PXL是國內(nèi)廣泛使用的一種iOS程序安裝包,他只能安裝于破解版的iPhone/iPad等設(shè)備上。和官方的IPA格式相比,pxl格式的程序有他獨特的特點。

1、PXL與IPA格式優(yōu)缺點比較

IPA作為蘋果官方的安裝包格式,顯然在先天上有他的優(yōu)勢,他易于安裝和卸載,只要使用iTunes就可以進行安裝、同步和卸載,而其他第三方的助手類軟件一般都支持IPA格式。但是由于是官方的格式,所以存在沙盒特性的限制。也就是說,他只能訪問沙盒下的目錄。

PXL作為國內(nèi)應(yīng)用相當廣泛的軟件,他也有自身的優(yōu)勢。首先,他具有更強的文件目錄訪問范圍。由于PXL是安裝在破解過的機子之上,所以PXL軟件對實現(xiàn)對整個文件系統(tǒng)訪問,因此如果你想做些和系統(tǒng)相關(guān)的軟件,例如安裝其他軟件或者是修改系統(tǒng)配置,IPA是絕對做不到的。

其次,他在安裝和卸載前后具有更強的靈活性。如果你想在安裝前做些準備工作,或者卸載時做些特殊的事情,可以通過PXL的安裝后和卸載前腳本來完成你的目的。

第三,PXL程序可以獲得更高的權(quán)限,可以通過一些手段,讓你的應(yīng)用程序具有root的權(quán)限。

而PXL的缺點也是顯而易見的!他僅僅支持破解過的iOS設(shè)備。同時他也會失去IPA軟件所具備的一些特性。

2、PXL軟件開發(fā)過程與IPA軟件開發(fā)過程的差異性

PXL的開發(fā)過程和IPA的開發(fā)過程具有一些差異性,不了解這些差異性可能對你的軟件運行過程中有些影響。

1、PXL可能會無法獲取Document、Library等IPA必定存在的目錄。

在IPA格式的軟件中,軟件安裝后,他的目錄格式大概如下:

  1. XXXXXX(蘋果生成的GUID目錄)  
  2. |  
  3. |____MyApp.app  
  4. |____Document  
  5. |____Library  
  6. |____tmp  
  7. |____xxxx(其他目錄) 

而PXL的軟件安裝在破解機后,他的目錄格式如下:

  1. /Applications  
  2. |  
  3. |____MyApp.app 

2、PXL程序中是否可以使用Document、Libarary等目錄?

答案是應(yīng)該可以。為什么是應(yīng)該呢?因為這個可能和機器的破解情況相關(guān)。一般情況下,使用系統(tǒng)的API來獲取Document目錄,你將獲得的目錄是:/var/mobile/Document,同樣,Library會指向/var/mobile/Library?;旧系钠平鈾C上這些目錄都是存在的?。ǖ莀并不保證_這些目錄一定存在,有非常小的概率遇到破解有問題的機器這些目錄不存在。)

那么使用這些目錄有什么要注意的事項嗎?

首先,所有pxl軟件的Document目錄都是指向同一個目錄/var/mobile/Document目錄,所以存在可能重名的危險!

其次,軟件在被卸載的時候,你存在Document和Libary下的文件不會被刪除!

3、PXL程序開發(fā)時推薦的數(shù)據(jù)保存方式?

那么在PXL的程序開發(fā)過程中,推薦使用什么樣的方式來保存信息呢?

一般而言,采用自己指定目錄的方式,你可以通過NSBundle來獲取你的app的路徑,在你的app目錄下建立一個你的數(shù)據(jù)存儲目錄(當然,可以打包的時候直接帶入,也可以直接放在你的app目錄下也行)。然后將你的數(shù)據(jù)存放在這個目錄底下。

還有一種情況,就是很有可能你的程序既需要生成ipa,也需要生成pxl,所以你可能需要在程序中對這些情況進行適配。那么這種情況你該怎么處理呢?

首先,代碼中應(yīng)該盡量避免直接使用Document、Libarary這些目錄,在訪問這些目錄前,封裝一下。例如:

  1. NSString *getMyDocumentPath()  
  2. {  
  3. NSString *path = nil;  
  4. if (isJailBreak)  
  5. {  
  6. path = MyJailBreakPath; //破解版自定義的路徑  
  7. }  
  8. else  
  9. {  
  10. path = DocumentPath; //系統(tǒng)的Document路徑  
  11. }  

那么應(yīng)該用什么方式來判斷是否jailBreak呢?一個方法是你打包之前,代碼里頭直接指定。那么動態(tài)判定的方法呢?其實很簡單,你直接取訪問一個超出沙盒目錄的文件,如果你能訪問到,那么他一定是jailBreak過的。

例如:

  1. BOOL isJailBreak()  
  2. {  
  3. int res = access(”/var/mobile/Library/AddressBook/AddressBook.sqlitedb”, F_OK);  
  4. if (res != 0)  
  5. return NO;  
  6. return YES;  

小結(jié):iPhone應(yīng)用程序 PXL格式程序開發(fā)實例操作的內(nèi)容介紹完了,希望本文對你有所幫助。

責(zé)任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-07-19 10:42:41

iPhone 應(yīng)用程序 模型

2011-07-19 11:12:07

iPhone 控制器

2011-07-19 10:56:15

iPhone 控制器 視圖

2011-07-21 10:47:37

iPhone Cocoa 委托

2011-07-26 09:41:23

iPhone xcode Mac OS X

2010-08-27 10:41:41

iPhone核心應(yīng)用程序

2011-08-12 14:54:45

iPhone委托

2011-08-05 13:49:53

iPhone 應(yīng)用 開發(fā)

2011-07-26 16:43:59

iPhone Web 服務(wù)器

2011-07-26 13:23:14

iPhone 圖片 相冊

2011-08-10 09:31:33

開發(fā)iPhone應(yīng)用程

2011-04-29 10:46:32

iPhone開發(fā)入門iPhoneiOS

2011-08-17 16:12:20

iPhone應(yīng)用程序

2011-08-17 16:16:29

iPhone應(yīng)用程序啟動過程

2011-07-20 15:58:58

iPhone 應(yīng)用程序 生命周期

2011-07-19 14:36:32

iPhone

2011-07-27 17:30:40

iPhone Locate 定位

2011-07-21 15:56:32

iPhone 截屏

2011-07-26 10:09:08

iPhone 多語言 國際化

2011-07-06 16:25:10

iPhone 程序 調(diào)用
點贊
收藏

51CTO技術(shù)棧公眾號