Android實(shí)現(xiàn)WebView點(diǎn)擊攔截跳轉(zhuǎn)原生
1. 首先設(shè)置Web視圖
webview.setWebViewClient(new MyWebViewClient());
webview1.setWebViewClient(new MyWebViewClient());
2. 攔截點(diǎn)擊的鏈接,跳轉(zhuǎn)到對(duì)應(yīng)的頁(yè)面
// 監(jiān)聽 所有點(diǎn)擊的鏈接,如果攔截到我們需要的,就跳轉(zhuǎn)到相對(duì)應(yīng)的頁(yè)面。 private class MyWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { Log.e("tsg","url==="+url); //這里進(jìn)行url攔截 if (url != null && url.contains(http://www.dbjr.com.cn)) { 字符串截取需要的 String str=""; str=url.substring(url.lastIndexOf("id/"),url.length()); str=str.substring(3,str.indexOf(".")); Log.e("tsg","id==="+str); // Toast.makeText(mActivity, "njhnuj", Toast.LENGTH_SHORT).show(); //跳轉(zhuǎn)需要跳轉(zhuǎn)的頁(yè)面 Intent intent = new Intent(); intent = new Intent(getActivity(), SPProductDetailActivity.class); intent.putExtra("goodsID",str); getActivity().startActivity(intent); return true; } return super.shouldOverrideUrlLoading(view, url); } @Override public void onPageFinished(WebView view, String url) { view.getSettings().setJavaScriptEnabled(true); super.onPageFinished(view, url); } }
補(bǔ)充知識(shí):Android9.0 WebView空白頁(yè)面
最近遇見線上客戶部分手機(jī)9.0系統(tǒng),在使用到webview的頁(yè)面,都是空白,無法正常加載出頁(yè)面。。。
原因是:
在安卓9.0版本中有一個(gè)新特性如下
所有應(yīng)用都使用HTTPS
這是對(duì)Android安全用戶的肯定。AndroidPie上的所有應(yīng)用程序默認(rèn)都使用HTTPS。Android關(guān)心您的隱私。
也就是說從Android 9.0(API級(jí)別28)開始,默認(rèn)情況下禁用明文支持。因此http的url均無法在webview中加載。
解決辦法:
在AndroidManifest.xml文件中的APplication標(biāo)簽添加android:usesCleartextTraffic="true"。
android:usesCleartextTraffic="true"
以上這篇Android實(shí)現(xiàn)WebView點(diǎn)擊攔截跳轉(zhuǎn)原生就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Android 擴(kuò)大 View 的點(diǎn)擊區(qū)域的方法
- 一文搞懂Android RecyclerView點(diǎn)擊展開、折疊效果的實(shí)現(xiàn)代碼
- Android擴(kuò)大View點(diǎn)擊范圍的方法
- Android開發(fā)實(shí)現(xiàn)ListView點(diǎn)擊展開收起效果示例
- Android XRecyclerView最簡(jiǎn)單的item點(diǎn)擊事件處理
- Android RecyclerView實(shí)現(xiàn)點(diǎn)擊條目刪除
- Android擴(kuò)大View點(diǎn)擊區(qū)域方案示例
相關(guān)文章
Android開發(fā)技巧之永不關(guān)閉的Toast信息框(長(zhǎng)時(shí)間顯示而非系統(tǒng)關(guān)閉)
Toast信息提示框之所以在顯示一定時(shí)間后會(huì)自動(dòng)關(guān)閉,是因?yàn)樵谙到y(tǒng)中有一個(gè)Toast隊(duì)列;那么有些時(shí)候需要這個(gè)Toast信息提示框長(zhǎng)時(shí)間顯示,直到需要關(guān)閉它時(shí)通過代碼來控制,而不是讓系統(tǒng)自動(dòng)來關(guān)閉Toast信息提示框2013-01-01Android ListView在Fragment中的使用示例詳解
這篇文章主要介紹了Android ListView在Fragment中的使用,因?yàn)楣ぷ饕恢痹谟胢vvm框架,因此這篇文章是基于mvvm框架寫的,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-09-09Android實(shí)現(xiàn)多維商品屬性SKU選擇
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)多維商品屬性SKU選擇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10Android實(shí)現(xiàn)可復(fù)用的選擇頁(yè)面
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)可復(fù)用的選擇頁(yè)面,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06Android中使用開源框架Citypickerview實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)選擇
這篇文章主要介紹了Android中使用開源框架Citypickerview實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)選擇效果,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03Android實(shí)現(xiàn)多點(diǎn)觸摸操作
這篇文章主要介紹了Android實(shí)現(xiàn)多點(diǎn)觸摸操作,實(shí)現(xiàn)圖片的放大、縮小和旋轉(zhuǎn)等處理,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05Android 桌面圖標(biāo)右上角顯示未讀消息數(shù)字
本文主要介紹了Android 桌面圖標(biāo)右上角顯示未讀消息數(shù)字的方法。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-04-04