前言
項(xiàng)目組剛開始的時候,用的蒲公英發(fā)的測試包征堪,但是多賬號的蒲公英不方便管理同一個地址的測試包瘩缆,所以開始嘗試自己的制作方法。
利用GitHub搭建
用web安裝測試包佃蚜,必須搭載具有HTTPS協(xié)議的服務(wù)器庸娱,所以想來想去,還是GitHub最方便谐算。
創(chuàng)建倉庫
登錄你的GitHub熟尉,新建一個遠(yuǎn)程倉庫,創(chuàng)建的時候洲脂,許可證斤儿、readme、忽略文件都不需要恐锦,直接開干往果。建完后拉倒本地,在本地隨便找找張圖片一铅,在同步到遠(yuǎn)程陕贮,第一步就完成了。
獲取GitHub文件地址
打開你的github創(chuàng)建的倉庫潘飘,點(diǎn)開你的圖片肮之。
然后你會看見一個下載的按鈕掉缺,點(diǎn)擊。
接著你就會看到一個新的窗口戈擒,顯示了該張圖片(我的是safari眶明,其他瀏覽器不知道什么效果),找到上方的地址筐高,就會獲取到圖片所在的資源地址了搜囱。
你復(fù)制下來,等會會用到柑土。
打包
當(dāng)你項(xiàng)目Archive完后犬辰,不管你打下面2種的哪種包。
都會出現(xiàn)這個選項(xiàng)冰单,把他勾選上幌缝。
勾選上的原因是,當(dāng)你打包完后诫欠,會比原來多出來一個
manifest.plist
文件涵卵。然后會跳出來這個窗口他會讓你填3個URL地址,第一個是測試包的地址荒叼,下面2個是圖片地址轿偎,圖片地址不重要,感覺也沒什么用被廓。把你上一步得到的地址復(fù)制到3個框內(nèi)坏晦,把第一個App URL最后的圖片名字改成后綴為.ipa的文件名,名字隨便取嫁乘,后面我們打包完后可以改成相同的名字昆婿。
Name那行你也可以改,這個對應(yīng)的是在你網(wǎng)頁安裝時蜓斧,提示你的名字仓蛆。
在下面就是你正常打包的過程了。
上傳測試包
我打的是企業(yè)證書的包挎春,把下面2個文件復(fù)制到你剛才的倉庫里(ipa包和manifest.plist)
復(fù)制完后看疙,記得把你ipa包名字改成上面你修改的名字一致,忘記的同學(xué)可以自己看下plist文件直奋,當(dāng)然能庆,也可以修改plist文件里的名字,只要一致就行脚线。
干完上面的事情后搁胆,你就可以提交到遠(yuǎn)程了,測試包大的話有點(diǎn)慢,耐心等下丰涉。
驗(yàn)證成果啦
提交到遠(yuǎn)程成功后,獲取plist文件的URL斯碌,還是上面的圖片地址一死,就是把鏈接最后面的圖片名改成plist的文件名,我的是這樣的:https://raw.githubusercontent.com/你的GitHub/WebInstall/master/manifest.plist
然后把這個鏈接嵌入到下面這個鏈接你就大功告成了:itms-services://?action=download-manifest&url=要嵌入的地址
最后傻唾,用iPhone的Safari打開這個鏈接就成功了投慈。
如果你有web的小伙伴,可以讓他寫個網(wǎng)頁冠骄,點(diǎn)擊按鈕跳轉(zhuǎn)這個鏈接就可以了伪煤。
利用本地服務(wù)器安裝
上面用的GitHub的服務(wù)器,總歸是別人的凛辣,還不如用蒲公英呢抱既,而且上傳ipa包也很慢,所以想弄一個局域網(wǎng)服務(wù)器扁誓。
只想知道原理的同學(xué)防泵,下面可以不用看了,因?yàn)檫@個我是邊查資料邊弄邊寫的蝗敢,不一定能成功捷泞。
搭建Apache服務(wù)
首先要開啟mac自帶的Apache服務(wù),這里就不多說了寿谴,附上我上篇的文章http://www.reibang.com/p/b975c1d7c7cc
接下來要給服務(wù)器添加SSL證書了
創(chuàng)建證書
打開你的終端锁右,選擇一個文件夾,進(jìn)入里面讶泰,用來放證書的咏瑟,先附上代碼
1.生成私鑰,命令: sudo openssl genrsa -des3 -out app.key 1024
2.生成簽署申請痪署,命令: sudo openssl req -new -key app.key -out app.csr
3.生成服務(wù)器的私鑰响蕴,命令: sudo openssl rsa -in app.key -out server.key
4.生成給網(wǎng)站服務(wù)器簽署的證書,命令: sudo openssl req -new -x509 -days 3650 -key server.key -out server.crt
操作步驟中的Common Name請?zhí)顚懽约旱姆?wù)器地址或者ip惠桃,需要注意的是Common Name一定要填對
在操作的過程中會遇到輸入的地方浦夷,這邊說下:
- Enter pass phrase for app.key:輸入證書密碼
- Verifying - Enter pass phrase for app.key:確認(rèn)密碼,后面出現(xiàn)密碼的時候都輸同一個密碼就行
- Country Name (2 letter code) :輸入國家名辜王,中國填CN就行
- State or Province Name (full name) :省名劈狐,我填的Shanghai
- Locality Name (eg, city) :市縣名,我還是Shanghai
- Organization Name (eg, company):公司名呐馆,我填的eastmoney ltd
- Organizational Unit Name:部門名字肥缔,我填的choice
- Common Name (eg, fully qualified host name):這個比較關(guān)鍵,一定要填對汹来,這個寫你服務(wù)器的名字或者你的ip地址续膳,例如192.168.1.10
- Email Address:這個填郵箱改艇,我就不示范了
- A challenge password:還是填上面的密碼
上面會有重復(fù)的填寫,照填就行坟岔,當(dāng)4步都成功后谒兄,你會看見4個文件。
其中server.crt和server.key就是要制作的簽名證書社付。
配置Apache
在編輯之前先說下承疲,最好在編輯文件之前都備份一份
編輯/etc/apache2/httpd.conf文件,去掉下面三行前面的#號
LoadModule ssl_module libexec/apache2/mod_ssl.so
Include /etc/apache2/extra/httpd-ssl.conf
Include /etc/apache2/extra/httpd-vhosts.conf
上面是別人的鸥咖,可能不一樣燕鸽,我的是這樣的:
Include /private/etc/apache2/extra/httpd-ssl.conf
Include /private/etc/apache2/extra/httpd-vhosts.conf
文件路徑不一樣,在全文搜索的時候復(fù)制后半段就行啼辣,后面不一樣的我就不描述了啊研,貼的代碼都是我實(shí)際的路徑。
編輯/etc/apache2/extra/httpd-ssl.conf文件鸥拧,去掉下面兩行前面的#號
SSLCertificateFile "/private/etc/apache2/server.crt"
SSLCertificateKeyFile "/private/etc/apache2/server.key"
這塊描述的是證書的地址悲伶,我們把上面創(chuàng)建出來的證書拷貝到這個地址。
編輯/etc/apache2/extra/httpd-vhosts.conf文件住涉,在NameVirtualHost*:80后面添加一段如下內(nèi)容:
<VirtualHost *:443>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /etc/apache2/server.crt
SSLCertificateKeyFile /etc/apache2/server.key
ServerName 10.10.2.123
DocumentRoot "/Users/hyf/Sites"
</VirtualHost>
上面的配置按照實(shí)際的情況修改
運(yùn)行sudo apachectl configtest
命令麸锉,檢查配置。
果然踩坑了舆声,出現(xiàn)如下情況
112的那個問題解決方案是把/etc/apache2/extra/httpd-vhosts.conf文件中2個80的代碼全注釋了
526的解決方案是修改/etc/apache2/httpd.conf文件花沉,去掉LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
的#號;
再次檢查配置媳握,發(fā)現(xiàn)還有問題碱屁。。蛾找。
只需要在apache安裝目錄/etc/apache2/httpd.conf文件中啟用ServerName配置指令即可娩脾。
加上:ServerName localhost:80
apache的配置文件httpd.conf中默認(rèn)是存在類似的指令的,不過在該指令前添加了#號打毛,注釋掉了該句柿赊,我們只需要模仿著增加一行。
再次檢查配置幻枉,這次OK了碰声,但是心情很忐忑,感覺已經(jīng)走遠(yuǎn)熬甫。
測試過后發(fā)現(xiàn)胰挑,HTTPS好像成功了,但是用web安裝還是失敗了,顯示無法連接瞻颂。
對了豺谈,記得第一次瀏覽網(wǎng)頁時安裝證書。
后記
那天下班有點(diǎn)急贡这,后來查了下茬末,失敗的原因猜測是自簽的SSL證書蘋果可能不信任。安裝的證書后要記得信任:https://support.apple.com/zh-cn/HT204477藕坯,在然后就成功啦
不會安裝證書的朋友可以看這篇:http://www.reibang.com/p/bd016015efe7,是我在找失敗原因的時候看到一遍不錯的文章噪沙,雖然沒有解決我的問題炼彪。