如何保護iPhone App不被破解辦法
如何保護iPhone App不被破解辦法是本文要介紹的內容,主要是來講解iphone APP中的安全問題,來看本文詳細內容講解。雖然iPhone的程序破解一直存在,但是出于市場,支付方式等眾所周知的原因,針對部分國家或地區市場的程序或游戲銷售量和破解比始終是一個比較 夸張的數字。
雖然我太不在意我制作應用的盜版被使用問題(因為大家愿意去用,說明你的應用或游戲受到了肯定)。但是出于如需和服務器頻繁交互,需提供給正 版用戶的權益得到保護以及迫切需要金錢緩解財務狀況等原因。我們不得不做出對iPhone破解的節制行為。
這里簡單談談一種方式,望能達到拋磚引玉的目的。
iPhone應用的發布是通過iTunes,用戶下載之后會對程序產生一個對應你iTunes帳號的簽名。而破解,正是需要去掉這個簽名,讓它可以安裝在 每一個帳號上。但是安裝過程還是需要欺騙iTunes,告訴它這個程序是已經簽名了的。
這個破解的簽名在哪里呢?對了,就是每個應用或游戲下的Info.plist文件,如果你下載過破解的 iPhone應用來研究。就會發現所有的破解程序都有這個一個鍵值:
- <key>SignerIdentity</key>
- <string>Apple iPhone OS Application Signing</string>
那么保護破解最簡單的入手點就是針對這個地方了。
打開xcode,在你需要檢測破解的地方添加以下代碼:
- NSBundle *bundle = [NSBundle mainBundle];
- NSDictionary *info = [bundle infoDictionary];
- if ([info objectForKey: @"SignerIdentity"] != nil)
- {
- //你的代碼
- }
以上代碼讀取info.plist,如果發現了SignerIdentity的鍵,就執行你的代碼。
破解永遠止不住,也不能完全被禁止,在更多時候我希望程序員能大度一些,讓用戶可以盡量無限制的使用你們的作品。也呼吁所有用戶能夠在使用之后,如 果真的喜歡,去購買一份正版。因為沒有資金收入,再好的公司,也會破產。長遠來看,只會限制了整個產業的發展。如是殺雞取卵的做法,也只會讓所有人都得不 償失。
小結:如何保護iPhone App不被破解辦法的內容介紹完了,希望通過本文的學習能對你有所幫助!