編譯生成App安裝包
又是一個愉快的周五,想必小伙伴們已經習慣每周五我們會將《30天,App開發從0到1》這本書的內容拿出來與大家進行分享。前面的章節已經講解了很多關于app的開發技術。今天跟大家分享的第七章,主要內容是針對app的編譯、版本管理和閃屏 廣告等與發布運營相關的功能進行講解,我們從中挑出關于編譯的部分來跟大家進行分享。
學習目標
1、學習如何使用 APICloud 云平臺對app項目進行云編譯及操作常用的配置項。
2、學習在 APICloud 云平臺上進行版本管理的方法。
3、學習如何定制閃屏廣告功能。
4、了解 APICloud 項目開發的優化策略和編碼規范。
5、學習多 Widget 和 SuperWebView 的使用。
編譯生成 App 安裝包
在app開發完成后,需要對其進行編譯以生成正式版才可以交付用戶。在編譯時也會涉及加密與權限設置等問題,本節將對這些內容加以介紹。
一、云編譯
在開發完成后首先要對app進行編譯。編譯的過程是在APICloud云端完成的,開發者只需要根據需求選擇對應的編譯特性,就可以完成多平臺的app編譯。在編譯之前可以對代碼進行壓縮和加密,也可以對編譯后的app進行加固并進行云測試,如圖下圖所示。
編譯過程是在 APICloud 云控制臺中app的云編譯頁面進行。在云編譯頁面可以進行多項設置,包括編譯平臺、權限、代碼壓縮(在右上角的高級設置中)、代碼加密和加固等,如圖下圖所示。
二、代碼全包加密
APICloud 代碼加密具有以下幾個特點。
1、網頁全包加密:對網頁包中全部的 HTML、CSS 和 JavaScript 代碼進行加密,加密后的網頁代碼都是不可讀的,并且不能通過常用的格式化工具恢復。代碼在運行前都是加密的,在運行時進行動態解密。
2、一鍵加密、運行時解密:在開發過程中無需對代碼做任何特殊處理,在云編譯時選擇代碼加密即可。
3、零修改、零影響:加密后不改變代碼大小,不影響運行效率。
4、安全盒子:定義了一個安全盒子,在盒子內的代碼按照加密和解密進行處理,其他代碼不受影響。
5、重新定義資源標準:對保護的代碼進行統一資源管理,加速資源加載,加速代碼運行。若想對代碼進行加密,只要在編譯時開啟全局加密即可。
三、擴展 API 調用安全配置
access 用于配置哪些域下的 HTML 頁面可以訪問 APICloud 的擴展 API,如訪問api. sms()。一般配置“*”,代表所有頁面都允許訪問。
在“config.xml”中對 access 字段進行如下配置:
origin 的取值范圍如下。
n * :所有頁面都可以訪問擴展 API 方法,包括本地頁面及遠程 Web 頁面。
n local :只允許本地頁面可以訪問擴展 API 方法。
n 其他域名:只有在該域及其子域下面的頁面可以訪問擴展 API 方法,注意,這里未區分http和https,配置 http://apicloud.com 和 https://apicloud.com 的效果一樣。
n nojailbreak :不允許越獄 /Root 的設備使用本應用。若配置該值,在越獄 /Root 的設備上使用本app時,app將強制退出。
默認值是“*”。
詳細信息參閱官方應用配置說明(app-config-manual 部分)。