1 回答

TA貢獻1875條經(jīng)驗 獲得超5個贊
界面呈現(xiàn)大體分兩種:
用 html + css 繪制頁面,運行原理是打包工具創(chuàng)建一個只有一個或多個
Activity
的安卓應(yīng)用,這個Activity
上就只有一個WebView
來顯示頁面。就相當(dāng)于那個 app 實質(zhì)上只是個瀏覽器,只能看你寫的頁面的瀏覽器;類似 RN 這種用 jsx + 類 css 描述界面,運行原理是打包工具創(chuàng)建一個安卓應(yīng)用,界面上的控件元素是通過你前面的 描述 來要求原生層創(chuàng)建對應(yīng)樣式的原生控件。
一個很容易區(qū)分的方法是,打開手機的設(shè)置-開發(fā)人員設(shè)置-顯示布局邊界,然后打開你想查看的 app,如果整個界面上只有一個大框框,里面的編輯框啦、按鈕啦這些元素都沒有框,那么就是第一種;如果幾乎每個元素都有五顏六色的框框住,且你知道它并不是直接原生開發(fā)的,那么就屬于第二種。
這兩種都是用 js 來編寫邏輯,都用到了 Bridge
這種概念來打通原生 (native) 和 js 層的通訊,包括下面這些用途:
告訴 native 要畫一個怎樣的控件 (RN 這種的)
native 告訴 js 有什么東西被點擊了之類的 (同樣是 RN 這種的)
告訴 native 需要調(diào)用什么 native 方法(兩種都會)
- 1 回答
- 0 關(guān)注
- 662 瀏覽
添加回答
舉報