官术网_书友最值得收藏!

2.2 App的類型與區別

從“是否原生”的角度來說,App分為3類,即原生App、Web App和混合App。對于不同類型的App,開展自動化測試使用的手段也不同。本節將介紹這3類App,以及它們的區別。

原生App依托于操作系統,它的交互性及可擴展性很強,需要用戶下載并安裝才能使用,是一個“完整”的App。

原生App是某個移動平臺(如iOS或Android平臺)所特有的,使用相應平臺支持的開發工具(如Xcode、Android Studio)和編程語言(如Swift、Kotlin)開發。一般來說,原生App的UI更好看、運行速度更快(性能更好)。

原生App的優勢如下。

運行速度快,性能好,用戶體驗更好。

可以調用移動終端硬件設備。

可訪問本地資源。

由于App下載到了本地(安裝到移動終端),因此在運行App時可節省帶寬成本(本地資源不需從網絡端請求)。

原生App的劣勢如下。

開發成本高,需針對不同平臺開發不同的版本。

需要維護多個版本。

利潤需要分給第三方一部分。

新版本需重新下載(它會不斷提示用戶下載更新,導致用戶體驗差)。

發布新版本需通過應用商店確認,而且發布時間長(應用商店審核的周期長),iOS平臺App審核一般需要1~3個工作日。

Web App是基于Web的App,它運行于網絡和瀏覽器上,目前多采用HTML5標準開發,無須下載與安裝。

HTML5 App使用標準的Web技術,這些技術通常是HTML5、JavaScript和CSS(Cascading Style Sheet,串聯樣式表)。HTML5 App的運行依賴于Web環境,因此具有只編寫一次即可跨平臺運行的效果。

Web App的優勢如下。

跨平臺開發,基于瀏覽器。

開發成本低,整體量級輕。

無須安裝,節約內存空間。

可隨時上線,不需要等待審核。

更新時無須通知用戶,自動更新。

維護比較簡單。

Web App的劣勢如下。

需要依賴網絡,用戶體驗相對較差。

功能受限,無法獲取系統級別的通知、提醒、動態效果等。

入口強依賴于第三方瀏覽器,導致用戶留存率低。

頁面跳轉費力,穩定性弱。

安全性相對較低,數據容易泄露或被劫持。

混合App指的是原生App中包含部分Web頁面的混合類App。它需要下載與安裝,看上去是原生App,但App中的部分頁面是通過UIWebView訪問的Web HTML5內容。混合App讓開發人員可以把HTML5 App嵌入一個原生容器里,集原生App和HTML5 App的優勢(劣勢)于一體。

混合App的優勢如下。

比例自由,如Web App占90%,原生App占10%,或者各占50%。

便于調試,開發時可以通過瀏覽器調試,調試工具豐富。

可輕松訪問手機的各種功能。

可以從應用商店中下載(Web App套用原生App的外殼)。

混合App需要在應用商店進行發布,但能自主更新,而原生App的更新必須通過應用商店實現。

移動Web對搜索引擎友好,可與在線營銷無縫整合。

兼容多種平臺,可離線使用。

頁面存放采用本地和服務器兩種方式。

省去了跳轉瀏覽器的麻煩。

支持消息推送,有助于提高用戶忠誠度。

App安裝包減小。

混合App的劣勢如下。

上線時間不確定。

性能稍差(需要連接網絡)。

用戶體驗不如原生App。

混合App可以通過JavaScript API(Application Program Interface,應用程序接口)訪問移動設備的攝像頭、導航系統,而原生App可以通過原生編程語言訪問設備所有功能。

原生App、Web App、混合App技術特性總結如表2-1所示。

表2-1 原生App、Web App、混合App技術特性總結

主站蜘蛛池模板: 营口市| 德钦县| 巴楚县| 福贡县| 呼伦贝尔市| 当涂县| 房产| 会东县| 淅川县| 体育| 海伦市| 华容县| 天水市| 九江市| 永顺县| 教育| 无极县| 吉木乃县| 牙克石市| 阳泉市| 朝阳市| 门头沟区| 清河县| 北流市| 淅川县| 澳门| 阿尔山市| 清徐县| 平遥县| 徐汇区| 农安县| 庄浪县| 诏安县| 平罗县| 襄樊市| 德惠市| 潮安县| 漳平市| 石柱| 蕉岭县| 永嘉县|