無需經過app第三方託管平臺,搭建一個本身的iOS分發平臺

前言:前端

蘋果提供了一個以無線方式安裝企業內部應用的策略,咱們能夠利用這個策略去內測分發本身的iOS應用。下面咱們一步步來實現本身的內測分發,那麼爲何要本身搭建屬於本身的分發網站?由於使用企業開發者的大多數都是一些BC,CP,SSC,金融期貨沒法上架,因此纔會購買企業開發者帳號進行分發ipa讓用戶無需越獄安裝,市面上那些基本都是掉籤號,而咱們的企業開發者帳號都是很是穩定。ios

skype:ioszhifu88
郵箱:ioszhifu88@tom.comnginx

步驟:web

1、搭建內測分發站點服務器

這裏我就很少說了,有一臺本身的服務器,使用lnmp或者lamp搭建一個web站點就能夠了。推薦使用nginx,這個在配置SSL證書的時候會簡單。app

2、申請SSL證書ide

蘋果在今年出來的政策,所有數據傳輸都要使用HTTPS才能夠。SSL證書可使用免費的,也可使用收費的。
免費的推薦使用景安的->傳送門
收費的推薦使用namecheap的->傳送門
具體安裝方法我就很少說了。網站

3、創建內測分發目錄url

咱們在綁定好域名以後,在服務器上面創建一個虛擬主機用於內測分發,並上傳好Display Image(5757)和Full Size Image(512512)的程序icon。
例如:
https://www.ianisme.com/myapp...
https://www.ianisme.com/myapp...code

4、添加udid

既然是內測分發,咱們固然是給公司內部人員下載的了,須要把公司內部人員的設備的udid添加到本身的開發者帳號中去。

5、打ipa包並上傳

咱們使用本身的開發者帳號進行打包
在打包類型中咱們選擇Save for Ad Hoc Deployment點擊下一步

我使用的是Xcode7.1,這裏勾選上Include manifest for over-the-air installation

而後在這裏填上應用的名字,後面的選項填入即將上傳服務器的ipa的地址以及圖片地址,

例如:
https://www.ianisme.com/myapp/myapp.ipa
https://www.ianisme.com/myapp...
https://www.ianisme.com/myapp...
打包完成後會生成一個manifest.plist文件和一個ipa文件
將manifest.plist和ipa文件上傳到本身的服務器https://www.ianisme.com/myapp...
若是Xcode版本較低或者之後對APP進行迭代更新,咱們均可以直接建立manifest.plist文件
內容以下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>

<key>items</key>
<array>
    <dict>
        <key>assets</key>
        <array>
            <dict>
                <key>kind</key>
                <string>software-package</string>
                <key>url</key>
                <string>https://www.ianisme.com/myapp/myapp.ipa</string>// ipa地址
            </dict>
            <dict>
                <key>kind</key>
                <string>display-image</string>
                <key>url</key>
                <string>https://www.ianisme.com/myapp/image57.png</string>
            </dict>
            <dict>
                <key>kind</key>
                <string>full-size-image</string>
                <key>url</key>
                <string>https://www.ianisme.com/myapp/image512.png</string>
            </dict>
        </array>
        <key>metadata</key>
        <dict>
            <key>bundle-identifier</key>
            <string>com.ianisme.myapp</string>// 你APP的bundleId
            <key>bundle-version</key>
            <string>1.0</string>// 分發程序的版本
            <key>kind</key>
            <string>software</string>
            <key>title</key>
            <string>myapp</string>
        </dict>
    </dict>
</array>

</dict>
</plist>
能夠對其中的內容進行更改。

6、編寫前端頁面進行分發

咱們有兩種方式

第1種:

咱們在網頁的head標籤中加入JS代碼,當用戶訪問網頁的時候自動觸發,進行下載。

<script>
var url = "https://www.ianisme.com/myapp/manifest.plist";
window.location = "itms-services://?action=download-manifest&url=" + url;
</script>
第2種:

打造一個炫酷的頁面(此處省略),以web連接的形式當用戶點擊觸發a標籤的時候進行下載

點擊下載
總結:

其實咱們能夠有fir.im、pre.im等第三方分發平臺以及蘋果本身的TestFlight能夠選擇,有人說第三方服務可能會存在不可抗拒的因素,而TestFlight的鏈接速度就很是慢,而我仍是喜歡用這些三方平臺,我以爲在內測中,咱們應該把時間浪費在有意義的事情上面。

相關文章
相關標籤/搜索