蘋果超級簽名的實現過程、技術原理

jinjiawan發表於2019-08-20

iOS APP超級簽名的實現流程圖

蘋果超級簽名的實現過程、技術原理

超級簽名原理

簡單來說,就是把新增蘋果裝置udid然後打包進行真機測試的過程(如下面真機測試教程),實現了自動化!

申請ad hoc證照打包iOS真機測試教程

優點:

非常穩定,不會像企業證照籤名容易掉籤問題,而且不用信任,安裝後直接可以啟動!

缺點:

超級簽名需要用到個人或者公司賬號,年費688,只能加100個蘋果手機udid,合計安裝一臺成本6.88,所以成本會比較高!

使用者需要操作安裝2次,需要安裝先一個描述檔案,再安裝應用!

蘋果超級簽名的實現過程、技術原理


整體執行流程

1.使用者手機安裝預留的描述檔案,獲取本機udid後,向伺服器返回使用者的udid

2.伺服器收到UDID後,將UDID新增到開發者賬號下。

3.然後生成此udid簽名用的證照描述檔案,把預留的ipa重籤。

4.重籤後的iPA上傳分發伺服器,透過分發連結讓使用者下載。


使用配置檔案獲取UDID過程

蘋果公司允許開發者透過IOS裝置和Web伺服器之間的某個操作,來獲得IOS裝置的UDID!

1.製作獲取裝置udid的描述檔案.mobileconfig

2.使用者安裝.mobileconfig描述檔案!

3.返回接收使用者的udid資料,比如:UDID,需要在.mobileconfig描述檔案中配置好,以及伺服器接收資料的URL地址;


獲取裝置udid的描述檔案.mobileconifg寫法例子

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "

<plist version="1.0">

    <dict>

        <key>PayloadContent</key>

        <dict>

            <key>URL</key>

            <string>http://dev.skyfox.org/udid/receive.php</string> <!--接收資料的介面地址-->

            <key>DeviceAttributes</key>

            <array>

                <string>UDID</string>

                <string>IMEI</string>

                <string>ICCID</string>

                <string>VERSION</string>

                <string>PRODUCT</string>

            </array>

        </dict>

        <key>PayloadOrganization</key>

        <string>dev.skyfox.org</string>  <!--組織名稱-->

        <key>PayloadDisplayName</key>

        <string>查詢裝置UDID</string>  <!--安裝時顯示的標題-->

        <key>PayloadVersion</key>

        <integer>1</integer>

        <key>PayloadUUID</key>

        <string>3C4DC7D2-E475-3375-489C-0BB8D737A653</string>  <!--自己隨機填寫的唯一字串-->

        <key>PayloadIdentifier</key>

        <string>dev.skyfox.profile-service</string>

        <key>PayloadDescription</key>

        <string>本檔案僅用來獲取裝置ID</string>  <!--描述-->

        <key>PayloadType</key>

        <string>Profile Service</string>

    </dict>

</plist>


相關工具分享

獲取裝置UDID的第三方庫:

Apple Developer Center 自動化工具:

自動重簽名工具:

OTA 分發應用工具:

Over-the-Air Profile Delivery Concepts(獲取裝置UDID官方文件):https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/iPhoneOTAConfiguration/OTASecurity/OTASecurity.html


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69945889/viewspace-2654312/,如需轉載,請註明出處,否則將追究法律責任。

相關文章