欧美aaa一级成人在线观看|午夜热门精品一区二区三区|少妇高潮喷水惨叫久久久|亚洲欧美高清麻豆综合

【南昌APP開發(fā)】H5 手機 App 開發(fā)入門:技術篇

2020-05-23 09:26:19
新人學習手機 App 開發(fā),一開始總要選擇一條學習路徑。

如果你熟悉 Java 語言,可以學習安卓開發(fā);如果熟悉腳本語言(比如 Python 或 Ruby),可以學習 Swift 語言,進行 iOS 開發(fā);如果像我一樣,比較熟悉 Web 網(wǎng)頁技術,那么 H5 開發(fā)是最容易上手的。
南昌APP開發(fā),南昌APP制作,南昌app開發(fā)公司,南昌小程序開發(fā),南昌網(wǎng)站建設,江西APP定制開發(fā)

這個系列教程的第一篇,已經介紹過了手機 App 的種類[1]。所謂的 H5 頁面,其實就是混合 App 的前端,外面是一個原生的殼,里面是 Web 網(wǎng)頁。本文緊接上一篇,介紹手機 App 開發(fā)的技術棧,尤其是跟 H5 開發(fā)相關的技術。



一、手機 App 的技術棧

手機 App 的技術??梢苑殖扇?。

(1)原生 App 技術棧 (native technology stack)

原生技術棧指的是,只能用于特定手機平臺的開發(fā)技術。比如,安卓平臺的 Java 技術棧,iOS 平臺的 Object-C 技術棧或 Swift 技術棧。

這種技術棧只能用在一個平臺,不能跨平臺。

(2)混合 App 技術棧 (hybrid technology stack)

混合技術棧指的是開發(fā)混合 App 的技術,也就是把 Web 網(wǎng)頁放到特定的容器中,然后再打包成各個平臺的原生 App。所以,混合技術棧其實是 Web 技術棧 + 容器技術棧,典型代表是 PhoneGap、Cordova、Ionic 等框架。

如果已經掌握了 Web 技術,這個技術棧就主要學習容器提供的 API Bridge,網(wǎng)頁通過它們去調用底層硬件的 API。

(3)跨平臺 App 技術棧 (cross-platform technology stack)

跨平臺技術棧指的是使用一種技術,同時支持多個手機平臺。它與混合技術棧的區(qū)別是,不使用 Web 技術,即它的頁面不是 HTML5 頁面,而是使用自己的語法寫的 UI 層,然后編譯成各平臺的原生 App。

這個技術棧就是純粹的容器技術棧,React Native、Xamarin、Flutter 都屬于這一類。學習時,除了學習容器的 API Bridge,還要學習容器提供的 UI 層,即怎么寫頁面。

(4)小結

H5 開發(fā)主要用在混合技術棧。但是,跨平臺技術棧的某些容器也會用到(比如 React Native),因為它們的 UI 層借鑒了 Web 模型。

另外,混合技術棧和跨平臺技術棧的基礎,都是原生技術棧,因為最終都要編譯成原生App。所以,不管使用哪一種技術棧,多多少少要了解一些各平臺的原生技術。

下面就依次介紹上面三類技術棧,每個技術棧都會給出一個最簡單的例子:加載網(wǎng)頁。通過各種技術棧加載網(wǎng)頁的不同做法,幫助大家理解它們的特點,對 App 的技術實現(xiàn)有一個總體的認識。

二、WebView 控件
講解具體的技術棧之前,大家需要知道,不管什么技術,最終在 App 里面顯示網(wǎng)頁,一定需要一個網(wǎng)頁引擎,這樣才能解析網(wǎng)頁。

通常情況下,App 內部會使用 WebView 控件作為網(wǎng)頁引擎。這是系統(tǒng)自帶的控件,專門用來顯示網(wǎng)頁。應用程序的界面,只要放上 WebView,就好像內嵌了瀏覽器窗口,可以顯示網(wǎng)頁

不同的 App 技術棧要顯示網(wǎng)頁,區(qū)別僅僅在于怎么處理 WebView 這個原生控件。

?原生技術棧:需要開發(fā)者自己把 WebView 控件放到頁面上。
?混合技術棧:頁面本身就是網(wǎng)頁,默認在 WebView 中顯示。
?跨平臺技術棧:提供一個 WebView 的語法,編譯的時候將其換成原生的 WebView。

注意,不同系統(tǒng)的 WebView 控件名稱不一樣,安卓系統(tǒng)就叫 WebView,iOS 系統(tǒng)有較老的 UIWebView,也有較新的 WKWebView,作用都是一樣的,差異在于功能的強弱。


南昌樂騰科技有限公司是國內8年專業(yè)從事南昌APP定制開發(fā)、南昌微信小程序開發(fā)、南昌微信應用開發(fā)、南昌網(wǎng)站建設、南昌電商網(wǎng)站平臺開發(fā)的公司,我們致力于成為國內最好的互聯(lián)網(wǎng)應用研發(fā)公司。客戶熱線:4006881286

關注樂騰科技官方微信

關注樂騰科技官方微信