Android 和 H5 都是移動(dòng)開發(fā)應(yīng)用的非常廣泛。市面上很多App都是使用Android開發(fā)的,但使用Android來開發(fā)一些比較復(fù)雜附屬類,提示性的頁面是得不償失的。而H5具有開發(fā)速度快,更新不用依賴于App的更新,只需要服務(wù)端更新相應(yīng)的頁面即可,所以,App和H5頁面相結(jié)合就顯得尤為重要。而android和H5都不可能每次都是獨(dú)立存在的,而是相互影響也相互的調(diào)用,獲取信息等,例如,H5頁面要獲取App中的用戶的基本信息,或者App端要操作H5頁面等,下面來看看這兩是怎么交互的。

先來看一下項(xiàng)目的整體架構(gòu)(Android studio中的項(xiàng)目)

整個(gè)項(xiàng)目的結(jié)構(gòu)就是這樣的,里面最主要的就是assets下面的js_webView.html文件和代碼中的WebViewJsActivity,其中項(xiàng)目里面的MainActivity只是做了個(gè)跳轉(zhuǎn)而已,跳轉(zhuǎn)到WebViewJsActivity。就這樣。

下面上代碼:(js_webView.html)

html里面的代碼也比較簡單,整個(gè)html中就一個(gè)Button,點(diǎn)擊這個(gè)Button的時(shí)候去執(zhí)行javascript中的 jsCallAndroid() 方法。

網(wǎng)頁中有關(guān) javascript 的代碼也比較簡單,整個(gè) js 就2個(gè)方法,一個(gè)是 jsCallAndroid() ,一個(gè)是 androidCallJs() ??捶椒椭懒?,分別是 js 調(diào)用 Android 的和 Android 調(diào)用 js 的。

先不要去管 jsCallAndroid() 里面做的是什么,待會(huì)會(huì)解釋,來看看 androidCallJs() 這個(gè)方法里面做的就是彈出一個(gè)信息提示框,具體提示什么信息都不重要了,隨便。

網(wǎng)友評論