1. 程式人生 > >android-hybird(一)

android-hybird(一)

hybird混合開發是現在應用開發中非常常見的

1.成本低,展示豐富

有些公司的產品剛剛開始可能甚至只投入後h5的應用,也就是你開啟應用,都是h5頁面。為什麼呢,成本低啊

2.h5展示,更新方便

h5真是的web頁面,是後臺推送來的資料,由伺服器隨時更新,而應用端不用關心他的變化

3.實際需要

比如淘寶,京東,滴滴頁面都有h5部分,都是混合開發,還有各種廣告,都是web

但是純的h5的應用在手機裝置上的體驗是沒法和native應用相比的,所以hybird是必然的。

混合開發第一種介紹路由機制

路由每個人都知道,就是跳轉唄,確實這裡用的url路由的功能和實際路由是十分類似的

大白話開始介紹(webview、webclient基礎不說)

1.當點選了app裡某個web banner/button(通常這個banner或button都是攜帶一個uri的),想跳到app的指定頁面

通過webclient,webclient有一個函式

shouldOverrideUrlLoading

就是用來攔截web處理的,返回true,就是你處理了,web不需要處理;false反之。來個小例子:

@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
    // Check if URL belongs to app
    if (uri的判斷) {
        //這裡是你的處理
        return true;
    }
    return false;
}

2.路由處理

比如你的uri是 test://one...      test://two...

你的路由只需要獲取uri的host然後根據host去跳轉到具體的頁面

if (uri.getHost.equals(one)){

     跳轉到one的頁面

}

具體細節如何連線,是介面還是別的,你自己定就好了

提醒這個方式的uri必須和後端人員協定好

ok  就是這樣,說的比較粗糙,體會一下,下一篇是hybird的第二種方式