0
所以我有一個web應用程序,我通過WebView在我的android應用程序中加載。當用戶點擊外部網站上的按鈕時,如何在我的android應用程序中調用一個函數? 除了運行該功能,我也希望能夠傳遞變量。 也許鏈接像myapp:// activity /?d =變量%20到%20pass? 我應該如何在網站和Android應用上實現這一點?WebView在activity.java中觸發一個函數
所以我有一個web應用程序,我通過WebView在我的android應用程序中加載。當用戶點擊外部網站上的按鈕時,如何在我的android應用程序中調用一個函數? 除了運行該功能,我也希望能夠傳遞變量。 也許鏈接像myapp:// activity /?d =變量%20到%20pass? 我應該如何在網站和Android應用上實現這一點?WebView在activity.java中觸發一個函數
好吧,不知道您的網頁是否可以包含「普通」網頁鏈接......(我假設它可以在下面的例子中)。
首先,頁面有告訴,這是一個鏈接的應用程序有使用你的鏈接處理
應用:
"myapp://activity/?d=variables"
在網頁瀏覽式的活動
,你會再有覆蓋Webviewclient,攔截的URL鏈接會被調用,檢查該鏈接爲您的應用程序,並最終執行所需的操作,分析參數等:
_webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//find out if the link we're looking for is really for this app
if (url.contains("myapp://activity")){
String action= = url.substring("myapp://activity/?".length());
//parse the action from the link...
//do something with this action..., parse additional params etc.
return true;
}
//handle the "normal" links...
return super.shouldOverrideUrlLoading(view, url);
}
});
希望這幫助
感謝Matthias,它的工作就像一個魅力。我一直在尋找答案,但我讀到的其他帖子讓我更加困惑。非常感謝! –