不經過AppStore發佈iOS應用教程

前提:php

    要實現這一功能,首先要有一個企業帳戶(年費是$299),而且已經配置好了相應的證書以及Provisioning Profile。html

    其次,要有一個git.oschina.net的賬號,用於相關文件的存放。git

    最後,要安裝Apache之類的Web服務器。瀏覽器

詳細教程:服務器

第一部分:Xcode應用打包工具

    首先,打開你要發佈的Xcode工程。選擇工具欄的Product->Archive,此時Xcode會對應用程序進行打包。學習

 

    若是Archive是灰的,把運行平臺選爲iOS設備就能夠了。url

    打包完成以後,會彈出Archives對話框。這裏顯示了剛剛打包好的工程,此時要點擊右側的Distribute按鍵。.net

 

    點擊Distribute按鍵以後會提示進行發佈方式選擇。這裏選擇中間的Save for Enterprise or Ad Hoc Deployment。設計

    接下來會彈出提示選擇相應的Provisioning Profile,必須是企業帳戶並正確配置後纔能有相應的發佈Provisioning Profile。選擇完成後點擊Export。

 

 

    以後會進入文件存儲路徑選擇,這裏咱們選擇了桌面。而後勾選底下的Save for Enterprise Distribution,此時會彈出企業發佈的相關設置。這裏必填的只有兩項:Application URL和Title,前者是應用的下載地址,後者是應用的名稱。因爲咱們如今尚未部署程序下載地址。因此這裏能夠先填入相似下圖的地址,Title就起應用的名字。其餘的能夠留空。

 

    點擊Save,此時會發現桌面多了兩個文件,一個是.ipa文件,一個是.plist,有了這兩個文件,就能部署在線安裝應用了。

    若是你的iOS設備已經越獄,此時把這個ipa經過xx助手裏面安裝就能裝上了。

第二部分:部署下載服務器    

    首先,你要搭建一個Web服務器,Mac上能夠經過MAMP(http://www.mamp.info/en/)進行,下載安裝基本都是一路Next,沒有什麼難度,安裝完成以後,啓動MAMP,在Preference裏面查看Apache Port,默認是8888。以後點擊OK關閉Preference。此時只要點擊Start Servers即可以啓動Web服務器。

 

    此時其餘設備經過你電腦的ip:端口即可以訪問你的Web服務器了。好比你的Mac的IP是192.168.1.107,用手機瀏覽器訪問192.168.1.107:8888即可以訪問服務器了(固然這裏要保證在同一路由下)。

    看到這裏,你可能會想直接把ipa放到服務器裏面,而後用手機瀏覽器直接打開這個ipa進行安裝,但很惋惜這是不行的,蘋果尚未這麼開放。

    雖然沒法經過直接打開ipa下載安裝應用,但咱們也能夠把以前在桌面生成的ipa和plist文件放到Web服務器的根目錄下(默認是Application/MAMP/htdocs)。還記得以前打包應用的時候,有一項Application URL是隨便填的嗎,這裏能夠輸入正確的地址了:假設你的IP地址是192.168.1.107,Apache端口是默認的8888,這裏Application URL就應該是http://192.168.1.107:8888/**.ipa(這裏**填入你應用的名稱)。修改Application URL的方法是:打開你剛剛放到Web服務器根目錄的plist,修改裏面url對應的值,改爲http://192.168.1.107:8888/**.ipa。

 

    來到Web服務器根目錄,刪掉原來的index.php文件(固然,最好是先備份一下),新建一個index.html的文件(推薦使用Sublime Text2工具)。而後輸入如下語句(將http://192.168.1.107:8888/UVMork.plist換成相應的地址):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>iPhone Application</title>
    </head>
    <body>
        <ul>
            <li><a href="itms-services://?action=download-manifest&url=http://192.168.1.107:8888/UVMork.plist"> App Install</a>
            </li>
        </ul> 
    </body> 
</html>

 

    保存後,用手機訪問192.168.1.107:8888便會進入這個html頁面。

    此時,點擊App Install,會有兩種狀況,若是你的iOS設備是iOS7.0或者更低的版本,App已經開始安裝了,可是,若是你的設備是iOS7.1的,很惋惜,會提示證書無效,沒法安裝。

    沒法安裝的緣由是蘋果在iOS7.1以後更改了itms-services協議,更改後只能經過https協議在線安裝應用。而咱們以前部署的Web服務器都是http開頭的,也就沒法安裝。

    解決的方法有兩種。第一種是爲你的Web服務器添加https協議,第二種即是這裏要用到的經過使用了https協議的第三方網盤來存放plist以及ipa文件,實現相似本身搭建的Web服務器的效果。可是不是任意網盤都能實現這一功能的,國內的百度雲盤,360等都不支持。國外的Dropbox支持,但有牆在,基本無法用。這裏咱們使用的是開頭提到的git.oschina.net。

    接下來的步驟就是把ipa和plist都存放在git.oschina.net裏,而後修改Web服務器index.html的連接地址,改成plist文件在git.oschina.net的地址(你能夠經過查看文件的原始數據得到這個地址),而後iOS設備訪問原來的地址(192.168.1.107:8888)即可以正確安裝了。若是你用過Git進行代碼管理,基本就不須要教程了。若是你沒有接觸過Git,能夠先學習下Git的一些基本功能。

    首先登陸https://git.oschina.net,而後點擊右上角的加號『建立一個新項目』,項目名能夠填Xcode的工程名。其餘能夠留空。而後點擊建立項目按鍵,項目就建立完成了。  

    接着,進入項目的地址,找到項目對應的HTTPS地址(以git結尾),複製到剪貼板。

    接着用你的Git工具(好比Version)把此地址的項目下到本地,而後將你的ipa和plist文件經過Git工具Push到遠端。Push完成以後,在瀏覽器中刷新你的Git工程所在的頁面,就能看到剛剛Push的文件了。

    此時,在瀏覽器中打開ipa文件,右鍵點擊『下載』,選擇拷貝下載連接。而後修改剛Push到遠端的plist文件的url,改爲這個下載鏈接。修改以後再次Commit,Push到遠端。

    最後,打開MAMP服務器的網頁文件目錄,修改html的地址爲剛剛Push的plist的地址(經過瀏覽器查看plist文件的原始數據能夠得到)就好了,iOS7.1或更新的設備再次經過瀏覽器訪問原來的地址(192.168.1.107:8888),點擊App Install即可以正確安裝應用了。

    接下來,你能夠設計下下載的頁面,讓這個頁面更好看。此外,因爲網址是LAN的地址,因此要外網訪問的話,還須要在路由進行端口映射,這樣外網的用戶就能下載到你的應用了。

相關文章
相關標籤/搜索