webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setPluginState(PluginState.ON);
webView.getSettings().setRenderPriority(RenderPriority.HIGH);
webView.getSettings().setGeolocationEnabled(true);
webView.getSettings().setPluginState(WebSettings.PluginState.ON);
webView.getSettings().setAllowFileAccess(true);
我设置了webclient
webView.setWebChromeClient(new WebChromeClient() {
@override公共布尔onShowFileChooser(WebView WebView,ValueCallback filePathCallback,FileChooserParams FileChooserParams){返回True;}@override public void onGeolocationPermissionsShowPrompt(String origin,Geolocationpermissions.callback callback){callback.invoke(origin,true,false);}//openFileChooser for Android 3.0+public void openFileChooser(ValueCallback uploadMsg,String acceptType){}//openFileChooser for Android<3.0 public void openFileChooser(ValueCallback uploadMsg,String acceptType){}//openFileChooser for其他Android版本public void openFileChooser(ValueCallback uploadMsg,String acceptType){openFileChooser(uploadMsg,acceptType);}公共布尔OnConSeleSessage(ConSeleSessage cm){OnConSeleSessage(cm.message(),cm.lineNumber(),cm.sourceID());返回true;}public void onconeLoneSessage(String message,int lineNumber,String sourceID){}});//End setWebChromeClient
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return true;
}
@Override
public void onPageFinished(WebView view, final String url) {
super.onPageFinished(view, url);
CookieSyncManager.getInstance().sync();
Log.i("finished", url);
}
});
这是我的xml
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/layMain"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
tools:context=".LandingActivity">
<WebView
android:id="@+id/web_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/include"
android:scrollbarStyle="insideOverlay"
android:scrollbars="none"
android:visibility="gone" />
<ImageView
android:id="@+id/splash"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:src="@drawable/splash"
android:visibility="gone" />
<include
android:id="@+id/include"
layout="@layout/bottom_option"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" />
<FrameLayout
android:id="@+id/framLay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone">
</FrameLayout>
</RelativeLayout>
<LinearLayout
android:layout_width="300dp"
android:layout_height="fill_parent"
android:layout_gravity="end"
android:background="@color/white"
android:orientation="vertical">
<ListView
android:id="@+id/navdrawer"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:background="@android:color/white"
android:choiceMode="singleChoice"
android:drawSelectorOnTop="false"></ListView>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:background="#454545" />
<ListView
android:id="@+id/navdrawer2"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:layout_weight="1"
android:background="@android:color/white"
android:choiceMode="singleChoice"
android:drawSelectorOnTop="false"></ListView>
<TextView
android:id="@+id/tvVersion"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="1dp"
android:gravity="center" />
<include layout="@layout/listview_bottom" />
</LinearLayout>
使用3.0.0及以上版本的Gradle和compileSdkVersion 26以上版本会导致此问题...
我的解不是精确解,但它解决了问题...将app gradle切换到
classpath 'com.android.tools.build:gradle:2.3.0'
将模块级切换到
compileSdkVersion 25
buildToolsVersion '25.0.2'
我已经为android Studio创建了一个webview应用程序。但没有加载web URL。错误为NET::ERR_ACCESS_DENIED。有谁能帮忙吗
如果注释掉,框架显示得很好。 我还应该做什么来显示文件选择器?
我读到应该重写方法。但是我得到一个错误,不能为重写“shouldoverrideurlloading”。 如果您能给出一个具有progressbar和webView的示例,并在同一个webView中打开新的URL,我将非常高兴。
我是Java和JavaFX的新手,我只是想知道JavaFX的webview是否可以运行javascript本身,除了它与java代码的通信之外。例如,当窗口加载时,我可以在webview中运行javascript警报语句,并在webview中实际获得警报,就像在普通浏览器中一样。我知道我可以通过以下方式使用我的java代码捕获此警报事件 <代码>Web引擎。setOnAlert设置 但我实际上希望
本文向大家介绍如何冻结JavaScript中的对象?,包括了如何冻结JavaScript中的对象?的使用技巧和注意事项,需要的朋友参考一下 在实时世界中,JavaScript没有其他语言中的传统类。它具有对象和构造函数。 Object.freeze()是许多有助于冻结对象的构造函数方法之一。 冻结对象不允许将新属性添加到该对象,并且还阻止该对象更改其自身的属性。Object.freeze()将始终
webview标记用于在您的Electron应用中嵌入“来宾”内容,例如网页。 此内容包含在webview容器中。 应用内的嵌入式页面控制着如何显示此内容。 webview在与您的应用程序不同的进程中运行。 为确保恶意内容的安全性,webview与您的网页没有相同的权限。 这可以确保您的应用免受嵌入内容的侵害。 您的应用与嵌入页面之间的所有互动都将是异步的。 让我们考虑一个示例来了解在我们的Ele