ios 通過無線分發方式安裝企業級的應用程式
之前首先需要準備好兩個檔案 ipa 和plist 兩個檔案
具體操作步驟如下:
1、将ipa和plist兩個檔案 架在伺服器的根目錄下 可以下通過網站直接通路并且下載下傳這兩個檔案
2、在根目錄下寫一個連結檔案,主要用于檔案下載下傳隻用
格式如下:
Install App
完成以上兩步操作之後,如果你的伺服器是架在linux上的,那麼你已經成功了。
但是如果你不是linux伺服器還需要第三 步
3、修改mimes type
設定伺服器 MIME 類型
您可能需要配置您的 Web 伺服器以便正确地傳輸清單檔案和應用程式檔案。
對于 OS X Server,将以下 MIME 類型添加到 Web 服務的“MIME Types”(MIME 類型)設定中:
application/octet-stream ipa
text/xml plist
對于 IIS,使用 IIS Manager 在伺服器的“屬性”頁面中添加 MIME 類型:
.ipa application/octet-stream
.plist text/xml
這樣就很完美了
注釋:1、對于plist的格式示例如下
<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> http://www.songeast.com.cn/statusnet/downloads/schoolcomm.ipa </string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>needs-shine</key> <true/> <key>url</key> <string> http://www.songeast.com.cn/statusnet/downloads/icon.png </string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>needs-shine</key> <true/> <key>url</key> <string> http://www.songeast.com.cn/statusnet/downloads/icon512.png </string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <string>com.songeastnew.SchoolCommunity</string> <key>bundle-version</key> <string>1.0.0</string> <key>kind</key> <string>software</string> <key>subtitle</key> <string>家校互動</string> <key>title</key> <string>家校互動</string> </dict> </dict> </array> </dict> </plist>
2、注意其中的url一定要寫對。
3、注意手機端通路和網頁通路效果是不一樣的
轉載:http://blog.sina.com.cn/s/blog_c22173770101awic.html
iOS 通過Safari浏覽器安裝 App
以往,如果要安裝App到非越獄裝置上,那麼有倆個辦法
1.App制作的時候使用企業級開發者帳号申請證書(開發證書/釋出證書),那麼隻做好App後,無需送出AppStore,放置在自己的Server上 http下載下傳就可以自動安裝。
2.如果是個人開發者帳号,需要使用hoc證書,并且需要把 需要安裝App的裝置的UDID添加到證書裡,打包後,需要将證書以及安裝包一起發送給對方,他才能安裝。
針對2,還有另外一個方式,不用發送給對方,隻需要讓對方用Safari浏覽器打開一個網頁就可以自動安裝,其實是借鑒了企業級App的方式,下面看我處理部署流程。
a.将裝置UDID添加到帳戶裝置表中。
b.更新hoc證書,重新編譯打包,制作安裝包 app.ipa。
c.接下來就是與以往不同的了,制作一個dev.html和一個dev.plist倆檔案,然後将app.ipa與dev.html,dev.plist 放到同一個目錄中,将整個目放置到httpServer的一個目錄下。參考下圖
為了便于CV程式員嘗試,我貼點代碼,百度不能放檔案,很不爽。
dev.html,如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
dev.plist如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | |
然後将目錄<内涵app.ipa,dev.html,dev.plist三個檔案>放置到server的一個目錄下,使對方能夠通路就行。
接下來在對方的safari中輸入 http://myserver.com/ios/dev.html 後續就一直預設操作就可以了。
我在實驗的時候,遇到了點問題,dev.html是可以正常通路的,但是就是不能自動安裝,經過查證,找到了問題
猜測是server配置問題,查了查,果然,伺服器不知道用戶端請求的倆檔案 app.ipa和dev.plist以什麼方式(文本還是流之類)傳遞給用戶端,需要增加這兩種擴充名的檔案處理模式<純個人了解>,因為很多常見的字尾名都已經有預設聲明
參考
http://help.apple.com/iosdeployment-apps/mac/1.1/#app43ad871e
設定伺服器 MIME 類型
您可能需要配置您的 Web 伺服器以便正确地傳輸清單檔案和應用程式檔案。
對于 OS X Server,将以下 MIME 類型添加到 Web 服務的“MIME Types”(MIME 類型)設定中:
application/octet-stream ipa
text/xml plist
對于 IIS,使用 IIS Manager 在伺服器的“屬性”頁面中添加 MIME 類型:
.ipa application/octet-stream
.plist text/xml
轉載:http://hi.baidu.com/chenfalei/item/983f5e6fe62f8f2669105b9e
通過網頁進行 iOS 應用内部分發
介紹如何通過網頁内部分發 iOS 應用, 包括 In-House 企業應用和 ad-hoc 測試應用。
原生 XCode 應用
1. 歸檔編譯
用 XCode 打開要分發的項目, 依次選擇
"Product" -> "Build for" -> "Archiving"
, 如下圖:
編譯完成之後,就會生成 XCode 的項目歸檔, 接下來使用 Organizer 設定分發資訊。
2. 使用 Organizer 設定分發資訊
打開 Orangizer , 選擇 Archives 标簽, 可以看到現有的 XCode 項目歸檔, 選擇要分發的項目, 然後點選右邊的
Distribute...
按鈕, 如下圖所示:
接下來回彈出分發向導, 第一步分發方式, 選擇
Save for Enterprise or Ad-Hoc Development
, 如下圖所示:
點選
Next
按鈕, 第二步選擇代碼簽名, 選擇
Enterprise
或者
Ad-Hoc
簽名, 如下圖所示:
點選
Next
按鈕, 第三步填寫分發資訊, 選擇應用儲存位置以及名稱, 同時要勾選
Save for Enterprise Distribution
, 輸入分發資訊, 然後儲存, 這樣将會生成兩個檔案, 一個是字尾為 ipa 檔案, 就是 iOS 程式本身了, 另一個是字尾為 plist 檔案, 包含 ipa 檔案的描述資訊。
3. 部署到内部 Web 伺服器
将上一部最終生成的 ipa 以及 plist 檔案複制到内部的 Web 伺服器, 在網頁上添加類似這樣的連結:
<a href="itms-services://?action=download-manifest&url=http://url-to-your-app.plist" target="_blank" rel="external nofollow" >安裝移動辦公iOS版</a>
Web 伺服器上可能需要添加 .plist 和 .ipa 的 Mime 類型, 它們的 Mime 類型分别為:
-
;.plist : text/xml
-
.ipa : application/octet-stream
4. iOS 裝置下載下傳安裝
用 iOS 裝置通路網頁, 點選連結就可以直接安裝了。 如果是未越獄的裝置, 需要确認簽名許可包含了裝置的 UDID , 否則無法安裝。
MonoTouch 應用
對于 MonoTouch 編寫的應用, 需要将 MonoDevelop 更新到最新版的 3.1.1 , 在
Build
菜單下也添加了
Achive
選項, 選擇
Arcive
菜單進行編譯, 就會在 XCode 的 Organizer 的 Archives 标簽下能看到對應的項目, 接下來就和上面的步驟一緻了。
轉載:http://beginor.github.io/2013/01/25/ios-app-enterprise-adhoc-distribution.html
以無線方式安裝應用程式
建構網站
将這些項目上傳到您網站上已鑒定的使用者可以通路的區域:
- 應用程式 (.ipa) 檔案
- 清單 (.plist) 檔案
您的網站設計可以像用來連結到清單檔案的單個頁面那麼簡單。當使用者輕按 Web 連結時,清單檔案會被下載下傳,并觸發它所描述的應用程式的下載下傳和安裝。
以下是一個示例連結:
<a href="itms-services://?action=download-manifest&url=http://example.com/ manifest.plist" target="_blank" rel="external nofollow" >Install App</a>
請勿添加歸檔的應用程式 (.ipa) 的 Web 連結。載入清單檔案時,裝置會下載下傳該 .ipa。雖然 URL 的協定部分是 itms-services,但 iTunes Store 并不參與此過程。
設定伺服器 MIME 類型
您可能需要配置您的 Web 伺服器以便正确地傳輸清單檔案和應用程式檔案。
對于 OS X Server,将以下 MIME 類型添加到 Web 服務的“MIME Types”(MIME 類型)設定中:
application/octet-stream ipa
text/xml plist
對于 IIS,使用 IIS Manager 在伺服器的“屬性”頁面中添加 MIME 類型:
.ipa application/octet-stream
.plist text/xml
轉載:http://help.apple.com/iosdeployment-apps/mac/1.1/#app43ad871e
IOS通過OTA部署App
通過ota安裝app是個很酷的功能,尤其是發給朋友測試的時候。一直想整理一下這方面的檔案,發現很多人都整理了。
轉一篇兒中文的:iOS: install App via OTA用的是xcode4.3.
這還有一篇兒英文的:Distributing an iPhone App (.ipa) Over the air with Xcode 4.雖然說是xcode4.但應該是4.2及以下的版本。因為4.3以後打包方式變了。
前提: 能安裝app的device需要被包含在你的provisioning profile裡
Environment: iOS 5.0 + xcode 4.3
ref link: https://help.apple.com/iosdeployment-apps/?lang=en-us#app43ad871e
Step 1 在你的project裡,選擇”iOS Device” in the active scheme (如果選擇的是iPad simulator or iPhone simulator,那麼menu “Product > Archive”是灰化的)
Step 2 select menu “Product > Archive”來為你的project建立一個archive (it is recommended that build your project again before this action)
Step 3 這時應該會自動彈出organizer window (之後你可以通過menu “Window > Organizer”來打開它),并顯示你剛建立的archive item in the archive list。Highlight the archive item, and then click “Distribute…” button
Step 4 select option “Save for enterprise or Ad-Hoc deployment”, click “Next”
Step 5 set “Code Signing Identity” as default value, my default value is “Tomson Xu” (這應該是你在apple developer site建立的certificate name), click “Next”
Step 6 設定”Save as”為你的project name,設定存放生成檔案的位置”Where”,勾上”Save for Enterprise Distribution”。
Step 7 設定”Application URL”為即将生成的ipa将放到web site裡的URL (e.g.http://xxx.xxx.xxx.xxx/CityUCAP.ipa),設定”Title”為任意text(注意它并不是安裝後的app display name), click “Save” button. 這時它将建立一個ipa file和一個與ipa file同名的plist file (假設為 CityUCAP.ipa and CityUCAP.plist)
Step 8 把step 7生成的ipa and plist file複制到你的web site裡 (注意:其url要和step 7設定的”Application URL“一樣),然後建立一個html file as follow.
<a href="itms-services://?action=download-manifest&url=http://xxx.xxx.xxx.xxx/ CityUCAP.plist" target="_blank" rel="external nofollow" >Install App</a>
Step 9 你需要添加2個MIME類型到你的web server,否則安裝過程中就有可能出錯。下面以IIS為例添加MIME type
1. 打開IIS Manager,左邊panel標明root node,然後在右邊的panel double click “MIME Types”
2. right click 任意位置, select “Add…”,分别添加下列2個MIME Type
File name extension: .ipa
MIME Type: application/octet-stream
File name extension: .plist
MIME Type: text/xml
3. restart your web server
Step 10. 在你的iPhone web browser裡通路Step 8建立的html file,然後click link to install app!
關于第九步,因為我一直用的nginx是以也沒配置過這步,不過一直好使。
轉載:http://www.cnblogs.com/yingkong1987/archive/2012/10/28/2743774.html
對xampp配置,mime.types增加
application/vnd.android.package-archive apk
application/octet-stream ipa
text/xml plist
application/iphone pxl ipa