Webapp打包就是在一臺機器上打包一個文件包或者程序包。
在服務器端,應用軟件與服務器端程序是分開的。
在前端,應用軟件通過瀏覽器安裝到移動設備上。
因此,移動應用程序應該與網站組件分開。
我們常說:網站封裝app、應用APP、手機網站、微信公眾號等。
但是如果想讓所有的網頁在同一臺機器上運行,就需要用到網站封裝的技術,這裡就介紹一下。
1.包的定義
網站包裝是對網頁進行包裝的一種。
但是在移動設備上,由於瀏覽器的限制,需要將各種站點整合起來,讓用戶方便的訪問。
為了讓各個站點的用戶使用同一個APP進行購物、消費、娛樂等活動,需要對各個站點的程序進行封裝。
將部分網站內容與應用程序分離,可以大大降低網站建設成本和維護成本。
2.具體工作流程
從圖中可以看出,封裝程序是按照業務需求劃分的。
用戶需要的功能模塊對應網頁中的內容,如果沒有這些模塊,則封裝程序中不會提供。
對於不同類型的產品,在打包的時候也需要注意不同業務需求之間的關聯性,比如頁面與用戶需求之間的關聯性。
一般來說,在封裝客戶端應用功能模塊時,不需要關注這些關聯。
對於頁面服務或者產品功能模塊,需要注意。
例如,在封裝前端應用時,需要注意用戶界面與頁面服務的關聯,保證交互體驗的流暢性,降低用戶訪問成本。
三、常見的封裝方式及應用場景
應用場景:在網站中,我們可以看到很多不同的模塊,比如:首頁、主界面等,這是因為這些模塊之間存在耦合關系,所以需要通過封裝來實現。
比如在瀏覽器中搜索某個網站時,會自動跳出這個頁面。
但是這個頁面在瀏覽器上會被限制,無法通過移動設備訪問。
因此需要對其進行封裝,將這些模塊與其他組件關聯起來,實現交互功能。
封裝效果圖
特征
1、無需配置Android開發環境和下載Android SDK、JAVA環境等。
2.打包的本地靜態HTML項目可以脫離服務器運行
3.支持自定義圖標、自定義APP名稱、自定義包名、全屏、橫屏、退出提示、常亮等選項
4.支持最新的瀏覽器特性,支持KRPano全景工程、WebGL工程、遊戲工程等。
5.支持打包網站
軟件截圖
包裝過程
1.填寫要打包的網址或選擇本地文件
1》打包網站
在『網址或本地HTML路徑』文本框中輸入以http開頭的網址
2》打包本地HTML項目
點擊右側打開文件按鈕,選擇打開HTML文件
2.可以修改APP名稱和APP包名《可選》
暗示:
APP名稱為應用安裝時在手機桌面顯示的名稱
APP包名對應APK的唯一ID,用於區分不同的APP。
具有相同 ID 的 APK 文件將在安裝過程中被覆蓋
3.點擊修改圖標修改APK在手機上顯示的圖標。
4.可以設置開機密碼。
設置開啟密碼後,手機端打開APP時,必須輸入密碼才能正常進入APP。
5.所有設置完成後,點擊Pack APK生成APK。
打包完成後,安裝到手機即可瀏覽
APK解決誤報病毒問題《1.5.9版本新增》
由於打包後的APK未在國內APP市場上市,1.5.9版本之前使用的是共享簽名證書。
因此,在部分手機系統上,1.5.9版本之前打包的APK偶爾會出現誤報。
為了解決這個問題,打包軟件1.5.9版本後,提供了內置獨立簽名證書的功能,支持用戶隨時重置簽名證書。
如果內置獨立簽名證書被誤報為有毒,可以使用以下方法重置內置獨立簽名證書:
打開軟件等待加載完成,點擊重置證書按鈕,會提示重置成功:
配置說明
1.『顯示標題欄』配置
勾選『Show title』後,即可配置APK的標題欄,顯示標題欄的應用如下圖所示
2.『調試信息』選項
打開『調試信息』選項後,APP運行過程中會顯示一些調試信息,在一些支持的網頁中會顯示一個調試面板,打開可以查看網站的調試信息,可以用於解決網頁中的問題
3.全屏選項
勾選全屏選項後,狀態欄不會出現,全屏顯示當前網頁
4.橫向選項
勾選後打開APP,默認是橫屏
5.退出提示選項
勾選後,當用戶按回車鍵退出程序時,會出現提示對話框,如下圖
6.進度條選項
勾選進度條選項後,當用戶打開網頁時,頂部會顯示加載進度條
7.瀏覽按鈕
勾選後APP底部會增加一列導航按鈕,支持前進、後退、刷新、返回首頁
8.啟動圖像
勾選後,可以選擇一張本地圖片作為啟動圖片,推薦尺寸為720*1280。
開機畫面會根據系統分辨率進行裁剪,所以建議將開機畫面的內容放在畫面中央,以免被裁剪。
9.禁用緩存
經檢查,APK將不再使用緩存,每次打開都會加載最新的網頁。
如果打包的網站經常更新,建議勾選這個選項
10.瀏覽器打開外部鏈接
勾選後,外部鏈接會調用安卓瀏覽器打開。
11.API支持
勾選後,可以通過js調用以下的API
退出APP: HTMLAPKPackerHelper.quitApp()
刷新當前頁面: HTMLAPKPackerHelper.refreshPage()
12. 支持左右滑動
勾選後,可以通過左右滑動返回上一頁,或者前進到下一頁。
《如果你的網頁裡有手寫等功能,不建議開啟此功能,否則會導致手寫過程中網頁返回或者前進到下一頁》
13. 定位權限
開啟後,可以在網頁中通過js獲取定位信息,如果網頁裡沒有該功能,可以不開啟
14.相機權限
開啟後,可以在網頁中使用相機拍照上傳,如果網頁裡沒有該功能,可以不開啟
15.存儲權限
開啟後,可以在網頁裡下載文件,如果網頁裡沒有該功能,可以不開啟
16.使用新內核
開啟後,將使用新的打包內核進行打包,支持最新的系統和更多的功能,推薦使用該選擇,後續版本老內核將會不再使用
17.下拉刷新
勾選後,打開的網頁可通過下拉的方式刷新
18.錄音權限
勾選後,可以使用h5的錄音功能
19.隱藏虛擬鍵
該選項僅在同時勾選了全屏生效,勾選後,全屏狀態下將隱藏虛擬按鍵
20.防止反編譯
勾選後,打包生成的APK將無法被反編譯 (安卓5.1不支持)
21.APK偽加密
勾選後,可以對APK文件進行偽加密,保護APK資源文件 (安卓5.1不支持)
22.英文支持
勾選後,界面提示信息會使用英文《包括退出提示,輸入密碼界面,聯網錯誤頁面》
23.允許混淆
勾選後,打包生成的APK可以被 安卓APK資源混淆加密重簽名工具 加固處理,如果不勾選則不可以處理
常見問題
1.打包出現『java Error opening registry key ‘Software\JavaSoft\Java Runtime Environment’』錯誤
這個問題一般是由於打包軟件安裝在了含有中文的目錄造成的,確保軟件不要安裝在含有中文的目錄
2.無法打開軟件,缺少framework,出現下面的錯誤提示
這個錯誤是系統沒有安裝運行環境造成的。
可以到加趣692727447群文件下載,也可以直接從以下網址下載安裝:
3.無法安裝打包軟件
本軟件不支持Windows XP,請使用以下系統Win10、Win2008-32、Win2008-64、Vista-32、Vista-64、Win7-32、Win7-64、Win8-32、Win8-64、Win8.1 -32、Win8.1-64、WinServer 2012-32、WinServer 2012-6
4.APK無法安裝到手機或安裝後閃退
這是因為手機系統低於4.4。
由於KRPano需要WebGL支持,需要在4.0以上的系統上運行,所以軟件限制打包的APK隻支持4.0以上的系統。
5、安全軟件提示有病毒
一般是安全軟件誤判安裝包造成的。
請添加信任並安裝它。
6.發現有些文件沒有打包到apk中
這是因為項目中的某些文件包含中文。
打包前請修改工程文件名,確保不含中文
7.打包錯誤,提示OutOfMemory信息
這是打包後的項目體積較大造成的。
一般64位系統最好不要超過1G,32位系統最好不要超過500M。