在Android中,不允许直接使用Javascript打开本地资源,但你可以通过使用Intent来打开外部应用程序来解决这个问题。下面是一个使用Intent打开Google Chrome并导航到指定URL的示例代码:
首先,确保你的Android设备上已经安装了Google Chrome浏览器。
然后,在你的Android项目的Java代码中,使用以下代码来创建一个方法来打开Google Chrome浏览器并导航到指定的URL:
private void openChromeBrowser(String url) {
try {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("googlechrome://navigate?url=" + url));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
} catch (ActivityNotFoundException e) {
// 如果用户设备上没有安装Google Chrome浏览器,则尝试使用其他可用的浏览器
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
}
}
接下来,在你的Javascript代码中,调用这个方法来打开Google Chrome并导航到指定的URL:
function openChromeBrowser(url) {
Android.openChromeBrowser(url);
}
最后,在你的Android项目的MainActivity
类中,添加以下代码将Javascript接口暴露给WebView:
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new WebAppInterface(), "Android");
...
public class WebAppInterface {
@JavascriptInterface
public void openChromeBrowser(String url) {
MainActivity.this.openChromeBrowser(url);
}
}
通过以上代码,你可以在Android中使用Javascript来打开Google Chrome浏览器并导航到指定的URL。如果用户设备上没有安装Google Chrome浏览器,则会尝试使用其他可用的浏览器来打开URL。
上一篇:不允许加载本地资源(图像缩略图)