請參考: iOS側載IPA方式匯總
本文Ivon分享透過UDID Registration購買開發者憑證,用於給IPA簽名,再側載到iOS裝置的操作過程。
測試系統版本:iOS 18
什麼是側載IPA?簡單來說就是安裝App Store以外的APP。有些開源軟體的開發者沒有上架App Store,而是在Github發表,得手動側載IPA。
比如,我想安裝仿 Tachiyomi的免費動漫畫APP: Mangayomi,就得側載IPA。
說到免費的側載IPA方案,最為人熟知的就是 AltStore了。但由於AltStore有安裝3個APP的限制,且7天重簽很麻煩,所以我改用購買付費開發者憑證的方式來側載IPA。這個方法安裝IPA無上限,簽名有效期間大約1年。
1. 名詞解釋#
側載IPA的步驟分為:購買開發者帳號取得開發者憑證 → 用程式給IPA簽名 → 側載IPA到iOS裝置
1.1. 付費開發者憑證#
首先介紹目前iOS合法的側載方式:向Apple註冊, 付費購買開發者帳號,取得開發者憑證,就可以用自己的憑證給IPA簽名,再側載到iOS裝置,IPA安裝數量無上限。因為付費開發者帳號是Apple官方認可的方式,完全合法,不用擔心憑證被撤銷。但是開發者帳號很貴呀,開發者帳號一年99美元!
所以我選擇販售企業開發者憑證的第三方簽名服務:UDID Registrations,該公司從2013年就存在了(我並沒有收錢業配)。跟其他販售企業開發者憑證的網站比起來,UDID Registration價格算是中等,一部裝置一年只要20美元。取得憑證之後就能用他們的服務給IPA簽名,或者拿去其他程式簽名。
注意風險:販售企業開發者憑證是遊走於灰色地帶的行為,很多都是中國公司在做這方面生意,買到的開發者憑證可能會被Apple隨機撤銷,之後側載的IPA就會無法開啟!所幸UDID Registrations的Plantium方案提供全年的撤銷憑證保護,如果被Apple撤銷,他們會換一個新憑證給你。
1.2. IPA簽名程式#
那麼取得開發者憑證之後要怎麼給IPA簽名呢?
最簡單的方式是使用XCode、iOS App Signer簽名後再側載,可惜的是這類IPA簽名程式只有Mac電腦版,不支援Windows。若沒有Mac電腦用虛擬機簽名也行啦。
如果不想用Mac電腦簽名的話,那就使用開源簽名程式Feather,直接在iOS裝置簽名IPA並安裝。
UDID Registration還有經營線上簽名的服務IPA Signer,使用Safari瀏覽器簽名完成之後就可以直接安裝IPA。
註解:你不能用AltStore給IPA簽名,因為AltStore是看你的個人Apple ID,會受到一個裝置安裝3個APP的限制。
1.3. 第三方應用程式商店#
第三方應用程式商店非必需品。
都可以自由給IPA簽名了,為什麼還要第三方應用程式商店呢?提供你一個集中下載IPA的場所,但這也代表你必須很小心,因為這些商店的APP沒有開放原始碼,不保證APP是絕對安全的。
如「appdb」是非營利的網站,由社群維護的第三方應用程式商店,上面蒐羅了許多破解版APP。只要從UDID Registration購得企業憑證之後就能將其交給appdb簽名,進而安裝上面的APP。
還有一個叫做AppValley的網站,屬於Signulous旗下經營的,功能類似appdb。
2. 購買UDID Registrations憑證#
Windows和macOS用戶,請將iOS裝置插到電腦,點選iTunes → 關於裝置,點一下序列號,查詢裝置的UDID數值。至於Linux用戶請用 libimobiledevice指令查詢UDID。
到UDID Registrations官方網站: https://www.udidregistrations.com,點選右上角的Buy Now
首先要填入iOS裝置的UDID。
之後選取Plantium方案,用Paypal或者信用卡付款。
隨後你就能在Check Order頁面用UDID查詢訂單狀態。
因為Apple的限制,UDID Registrations註冊後需要等大概72小時才會給你下載憑證(certificate,副檔名為.p12
)和provisioning profile(副檔名為.mobileprovision
)。
在這之前他們會給你一個暫時用的描述檔,可用IPA Signer線上服務簽名IPA,立即安裝APP。但是這個描述檔效力大概只有3天,之後就無法使用了。
3. 簽名IPA並側載到iOS#
介紹三種簽名方式。
3.1. IPA Signer線上簽名#
開啟Safari,到UDID Registrations官方推薦的 https://www.ipasigner.com網站。只要你的UDID Registrations註冊超過72小時,IPASigner會自動帶入你的開發者憑證簽名,這樣安裝APP就不會出現描述檔了。
輸入UDID,再上傳要簽名的IPA,等待簽名完成。
下載IPA之後系統就會提示你安裝APP了。
3.2. 用Feather APP簽名#
下載開源簽名程式 Feather,利用上述的IPA Signer給Feather IPA簽名,安裝Feather APP。
取得UDID Registrations的certificate和provisioning profile檔案,密碼填123456。如果你是用iOS的Safari下載.p12檔案,不要直接點選,會變成安裝描述檔,請長按並點選「下載連結檔案」。
開啟Feather APP,匯入開發者憑證,就可以給其他IPA簽名了。
3.3. 用Mac的iOS App Signer簽名#
你必須先取得UDID Registrations的certificate和provisioning profile檔案才能夠自行簽名。
下載上述兩個檔案,點選
.p12
檔案將其加入到Mac鑰匙圈,密碼為123456。在Mac電腦安裝Xcode,再安裝 iOS App Signer
開啟iOS App Signer,選取IPA
certificate選取與
.p12
檔案同名的鑰匙圈,provisioning profile則是選取剛剛下載到的.mobileprovision
檔案將簽名IPA存檔
透過 Apple Configurator將IPA側載到iOS裝置。
4. 安裝appdb商店的APP#
「appdb」是社群維護的第三方應用程式商店,經營超過10年了,廣受Reddit社群信賴。但appdb不保證商店裡的APP不含病毒,因此下載APP時務必小心。
雖然appdb可以幫你簽名IPA,但是不穩定。建議先取得UDID Registrations的certificate和provisioning profile檔案,用自己的憑證交給appdb簽名比較保險。
用Safari到appdb官網: https://appdb.to,點選Link your device,輸入電子郵件後下載描述檔。
點選同意安裝描述檔(註:appdb是用MDM機制來管理iOS裝置,權限很高,在意這個的就不要安裝)
到appdb的 Configureing features頁面,上傳你的certificate和provisioning profile檔案。
隨後就能下載appdb商店的APP了,網頁點選Install直接安裝。