Android打開WebView后常見需求實(shí)現(xiàn)

轉(zhuǎn)載請注明原創(chuàng)出處,謝謝!

用戶創(chuàng)建訂單后,發(fā)起微信或支付寶支付
WebView調(diào)起微信和支付寶app進(jìn)行支付
1、給WebView設(shè)置WebViewClient
2、WebViewClient重寫shouldOverrideUrlLoading();方法
3、shouldOverrideUrlLoading方法攔截alipays和weixin開頭的url,放開微信和支付寶app支付

if (url.startsWith("alipays") || url.startsWith("weixin")) {
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
    return true;
}

  • 用戶需要上傳身份證正反面等圖片信息
    WebView實(shí)現(xiàn)選擇圖片(WebView需要支持type="file" 打開相機(jī)和相冊)
    實(shí)現(xiàn)過程:
    1、給WebView設(shè)置WebChromeClient
    2、WebChromeClient重寫openFileChooser();系列方法

  • 用戶下單過程可能會撥打電話進(jìn)行業(yè)務(wù)問題的咨詢
    WebView調(diào)起系統(tǒng)撥號功能
    1、給WebView設(shè)置WebViewClient
    2、WebViewClient重寫shouldOverrideUrlLoading();方法
    3、shouldOverrideUrlLoading方法攔截tel:開頭的url
if (url.contains("tel:")) {
    String mobile = url.substring(4);
    // 打電話功能,此方法不需要配置android.permission.CALL_PHONE權(quán)限
    new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + Uri.encode(mobile)));
    return true;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容