筆者不久前剛做完企業證書的無線分發打包,無線分發確實要比其他的打包上架的流程要麻煩些,不過也不算太難,結合項目,總結下經驗吧,也讓后面的朋友們少踩些坑。
首先說明一下,我們公司沒得企業賬號(不是因為買不起,而是申請了很多次都不讓過,看來蘋果是把企業證書收緊了...),所以這次無線分發的證書是用的別的公司的企業證書,考慮到這一點,我們首先就拿不到企業證書的賬號和密碼,別人也不會給你,所以這次開發我用的是擁有企業證書的公司,打包給我的一個 P12證書(具體什么是p12,這里就不做詳細闡述了)和一個PROV文件
然后雙擊P12文件,就可以把里面的證書導入你mac電腦的鑰匙串,成功以后,能在鑰匙串看到開發證書,順便提一下 P12證書是可以加密的,如果加了密,就要按提示輸入密碼,如果沒有加密,直接點擊 “好” 就可以導入證書了。然后用Xcode打開你要打包的工程,再雙擊PROV文件,把它導入工程中,這樣,打包所需要的外部文件就全部準備好了,好了,現在開始打包吧。
第一步,進入工程 ->targets->general ,進行配置
如下圖所示,選擇team時,由于我沒有企業賬號,這里不勾選Automatically manage signing,下面的選擇release(做發布配置)這一欄,導入PROV文件
第二步,進入工程->targets->buld settings->輸入sign,進行下面相關配置,如果發布只需要配置release相關即可
第三步,點擊工程 停止? 右邊的項目名稱,選擇edit scheme 進行配置,把相關信息改成release(發布)我當時為了保險起見,能改的我都改了,其實我想應該不用把,改下打包對應的那個應該就可以了
第四步,準備工作完成,開始打包,打包前,在選擇模擬器型號的位置,選擇“真機”(如果你的手機正連著電腦)或者generic ios Device,選擇完成后,點擊product->Archive開始打包
第五步,好了,我們要用的包 Xcode 已經幫我打好了,現在要導出安裝包,選擇export
然后選擇如下圖所示第三個選項:企業打包不上架appStore
next->下一步,選擇你的開發證書。
這里會出現一些問題:如果你的APPID不是企業賬號里面的成員,這里就不會顯示開發證書,而是會出現你讓你輸入企業證書的賬號密碼的選項,這個我之前也解釋過來,企業證書對一個企業是很重要的,別人是不會告知我們公司他們的賬號和密碼,所以,這個時候,我們公司要求將我自己的個人appid加入到他們企業賬號中去,他們會發出一個邀請郵件到你的蘋果郵箱,然后你再有效期內接受就行了,再次進入,你就會看見開發證書的選項。
值得一提的是,如果你的Xcode中記錄了任何一個企業賬號,不管是誰的,你不需要成為當前企業賬號的一員,同樣可以打包成功。
選擇“Use local signing assets” ,如果你的Xcode中有任何企業賬號,都可以進行下一步,打包成功。
next->下一步,選擇分發給所有的設備。
next->這里要注意的事,不上架的app 要做無線分發,必須勾選下圖箭頭所示的選項,這樣在打包完成后才會順便生成一個plist的文件,這個plist文件就包含你的安裝包所放置的服務器的地址,用戶在檢測到版本更新或者下載時,其實先是下載那個plist文件,然后蘋果會提示你“是否前往app store 下載”,但實際上你的app 根本不在app store上,單后你點擊確定,它就跳到app所在外部服務器進行下載了。
next->這里還要選擇一次證書,但是上次筆者弄到這里的時候
next->這里是最后一步,也是最麻煩的地方,要填三個東西,分別是app存放的服務器地址,后面分別是兩張圖片(后面的圖片的地址可以隨便填,到時候生成plist文件以后,進去把它刪掉就行了,但是如果你準備了圖片,就放上去就行了)。這里主要說下第一個,首先,必須是https的網絡協議,也就是必須是https開頭的服務器地址。而https又必須要要使用ssl協議,就必須要制作SSL證書,按理說到了這里其實也就沒我們IOS開發人員的什么事了。但我還是簡單的說一下吧
SSL相關:
一、ssl的作用:
1)認證用戶和服務器,確保數據發送到正確的客戶機和服務器;
2)加密數據以防止數據中途被竊取;
3)維護數據的完整性,確保數據在傳輸過程中不被改變。
而ssl證書指的是在ssl通信中驗證通信雙方身份的數字文件,一般分為服務器證書和客戶端證書,我們通常說的ssl證書主要指服務器ssl證書。ssl證書由受信任的數字證書頒發機構CA(如沃通WoSign),在驗證服務器身份后頒發,具有服務器身份驗證和數據傳輸加密功能。分為擴展驗證型EV ssl證書、組織驗證型OV ssl證書、和域名驗證型DV ssl證書。
二【ssl證書申請的3個主要步驟】
1、制作CSR文件
所謂CSR就是由申請人制作的Certificate Secure Request證書請求文件。制作過程中,系統會產生2個密鑰,一個是公鑰就是這個CSR文件,另外一個是私鑰,存放在服務器上。要制作CSR文件,申請人可以參考WEB SERVER的文檔,一般APACHE等,使用OPENssl命令行來生成KEY+CSR2個文件,Tomcat,JBoss,Resin等使用KEYTOOL來生成JKS和CSR文件,IIS通過向導建立一個掛起的請求和一個CSR文件。
2、CA認證
將CSR提交給CA,CA一般有2種認證方式:
1)域名認證:一般通過對管理員郵箱認證的方式,這種方式認證速度快,但是簽發的證書中沒有企業的名稱;
2)企業文檔認證:需要提供企業的營業執照。
也有需要同時認證以上2種方式的證書,叫EV ssl證書,這種證書可以使IE7以上的瀏覽器地址欄變成綠色,所以認證也最嚴格。
3、證書安裝
在收到CA的證書后,可以將證書部署上服務器,一般APACHE文件直接將KEY+CER復制到文件上,然后修改httpD.CONF文件;TOMCAT等,需要將CA簽發的證書CER文件導入JKS文件后,復制上服務器,然后修改SERVER.XML;IIS需要處理掛起的請求,將CER文件導入。
使用ssl證書不僅能讓信息的安全性更有保障,還可以提高用戶對于網站的信任度。但鑒于對建站成本的考慮,很多站長對其望而卻步。在網絡上免費始終是一個永遠不過時的市場,主機空間有免費的,而ssl證書自然也有免費的,此前,便有消息稱,Mozilla、思科、Akamai、IdenTrust、EFF、以及密歇根大學的研究人員將開啟Let’s Encrypt CA項目,計劃從今夏開始,為網站提供免費ssl證書以及證書管理服務(注:如需更高級的復雜證書,則需付費)。另外,沃通wosign目前已經推出了3年期的多域名免費ssl證書,證書到期后可以免費續期,支持綁定多個域名、支持證書狀態在線查詢協議(OCSP)、支持中文、全球瀏覽器信任,任何個人都可以從沃通CA申請到免費的ssl證書,只要你有網站。
而需要高級別ssl 證書的往往是大中型網站,如網上銀行、購物網站、金融證券、政府機構等,諸如個人博客之類的小型站點完全可以先嘗試免費ssl證書。
從商業機構到政府部門再到個人家庭,越來越多的用戶使用網絡來處理事務,交流信息和進行交易活動,這些都不可避免地涉及到網絡安全問題,尤其是認證和加密問題。特別是在網上進行購物交易活動中,必須保證交易雙方能夠互相確認身份,安全地傳輸敏感信息,事后不能否認交易行為,同時還要防止他人截獲篡改寶貴信息或假冒交易方。那么,我們該如何提高站點信息的安全性呢?目前最簡單的解決方案就是利用ssl安全技術來實現WEB的安全訪問。