有谁知道为什么WebView只显示白色或空白页面与我的网站网址?Xamarin Forms - Android无法加载网站与HybridWebViewRenderer
注意 如果我按住白色/空白页,我可以选择“全选”和“复制”。之后,我将它粘贴在便条中,我可以看到我的网站的内容。怎么了?
我的代码
var webView = new Android.Webkit.WebView(Forms.Context);
webView.Settings.JavaScriptEnabled = true;
webView.Settings.LoadsImagesAutomatically = true;
webView.SetWebViewClient(new MyBrowser());
webView.Settings.SetAppCacheMaxSize(5 * 1024 * 1024);
webView.Settings.SetAppCachePath(Context.CacheDir.AbsolutePath);
webView.Settings.AllowFileAccess = true;
webView.Settings.SetAppCacheEnabled(true);
webView.Settings.CacheMode = CacheModes.Default;
webView.Settings.DomStorageEnabled = true;
webView.PostUrl("<MyURL>", Convert.FromBase64String("<mystring>"));
if (DetectConnection.checkInternetConnection())
{
webView.Settings.CacheMode = CacheModes.CacheElseNetwork;
}
SetNativeControl(webView);
if (oldHWV != null)
{
Control.RemoveJavascriptInterface("jsBridge");
oldHWV.Cleanup();
}
if (newHWV != null)
{
Control.AddJavascriptInterface(new JSBridge(this), "jsBridge");
Control.LoadUrl(Element.Uri);
InjectJS(JavaScriptFunction);
}
}
void InjectJS(string script)
{
if (Control != null)
{
Control.LoadUrl(string.Format("javascript: {0}", script));
}
}
class MyBrowser : WebViewClient
{
override public bool ShouldOverrideUrlLoading(Android.Webkit.WebView view, string url)
{
view.LoadUrl(url);
return false;
}
}
输出
12月10日至9日:14:20.651 W /技术(18729):JNI RegisterNativeMethods: 尝试注册为0本机方法 md5db941dcc072fe623e29eb3b9d0ecdde3.HybridWebViewRenderer 10-09 12:14:20.732 I/WebViewFactory(18729):加载com.android.webview 版本44.0.2403.119(代码246011900)10-09 12:14:20.778 W/System (18729):ClassLoader引用未知路径: /system/app/webview/lib/arm 10-09 12:14:20.796 I/LibraryLoader(18729): 时间来加载本地库:9毫秒(时间戳258-267)10-09 12:14:20.796 I/LibraryLoader(18729):预期本机库版本 号 “”,实际本地库版本号 “” [INFO:library_loader_hooks.cc(120)]铬启用日志记录:级别= 0,缺省冗长= 0 12月10日至9日:14:20.823 V/WebViewChromiumFactoryProvider(18729):绑定铬到主要 弯针活套(main,tid 1){b95d216} 10-09 12:14:20.823 I/LibraryLoader(18729):预期的本地库版本号 “”,实际本地库版本号“”10-09 12:14:20.824 I /铬(18729):[INFO:library_loader_hooks.cc(120)]铬 日志启用:级别= 0,默认冗长度= 0 10-09 12:14:20.834 I/BrowserStartupController(18729):初始化铬进程, singleProcess = true 10-09 12:14:20.835 W/art(18729):尝试 删除非JNI本地引用,螺纹10-09 12:14:20.836 E/SysUtils单元(18729):ApplicationContext已在ApplicationStatus 空[警告:resource_bundle.cc(285)] locale_file_path.empty()10-09 12:14:20.855 W /铬(18729):[警告:resource_bundle.cc(285)] locale_file_path.empty()10-09 12:14:20.864 E/libEGL(18729): validate_display:255 error 3008(EGL_BAD_DISPLAY)10-09 12:14:20.864 E/libEGL(18729):validate_display:255 error 3008(EGL_BAD_DISPLAY) 10-09 12:14:20.924 E/DataReductionProxySettingListener(18729):No DRP 由于异常而导致的键:java.lang.ClassNotFoundException: com.android.webview.chromium.Drp 10-09 12:14:20.968 W/art(18729): 尝试删除非JNI本地引用,转储线程10-09 12:14:20.979 W/AwContents(18729):onDetachedFromWindow在 已经分离时调用。在 'HybridWebViewRenderer.cs:180,1' 忽略解决未决断点为void .Droid.MyBrowser.OnReceivedError(Android.Webkit.WebView 视图,Android.Webkit.IWebResourceRequest请求, Android.Webkit.WebResourceError误差)[0x00001 ]。 10-09 12:14:21.188 D/Mono(18729):Image addref Mono.Android.Export [0x969fcfc0] - > Mono.Android.Export.dll [0x969aa600]:2 10-09 12:14:21。188 D /单声道
(18729):准备设置程序集'Mono.Android.Export' (Mono.Android.Export.dll)10-09 12:14:21.188 D/Mono(18729): Assembly Mono .Android.Export [0x969fcfc0]添加到域RootDomain, ref_count = 1 10-09 12:14:21.190 D /单声道(18729):AOT:图像 未找到'Mono.Android.Export.dll.so':dlopen失败:library “/data/app//lib/arm/libaot-Mono.Android.Export.dll.so”not found 10-09 12:14:21.191 D/Mono(18729):AOT:image ' /usr/local/lib/mono/aot-cache/arm/Mono.Android.Export.dll.so'not found:dlopen failed:library “/data/app//lib/arm/libaot-Mono.Android .Export.dll.so“不是 found 10-09 12:14:21.191 D/Mono (18729):配置尝试到 parse:'Mono.Android.Export.dll.config'。 10-09 12:14:21.191 D/Mono
(18729):配置尝试解析: '/usr/local/etc/mono/assemblies/Mono.Android.Export/Mono.Android.Export.config'。程序库文件文件网可用的操作系统文件说明Mono.Android.Export [0x969fcfc0] - > mscorlib [0xa9e73f00]:66已加载 程序集:Mono.Android.Export.dll [External] 10-09 12:14:21.200 D/Mono (18729):Assembly Ref addref Mono.Android.Export [0x969fcfc0] - > Mono.Android [0xa8ee2d80]:36 10-09 12:14:21.215 D/Mono 18729): 大会参考的AddRef Mono.Android.Export [0x969fcfc0] - > 的System.Xml [0x98469fc0]:4加载组件:callback_factory [外部] 12月10日至9日:14:21.382 d /单声道(18729) :Assembly Ref addref Mono.Android.Export [0x969fcfc0] - > System.Core [0xa8ee3680]:8 10-09 12:14:21.389 W/art(18729):试图删除非-JNI本地 参考,转储线程10-09 12:14:21.389 W/art(18729): 尝试删除非JNI本地引用,转储线程10-09 12:14:21.402 D /单声道(18729) :DllImport搜索:'__Internal' ('(null)')。 10-09 12:14:21.402 D/Mono(18729):搜索 'java_interop_jnienv_call_float_method_a'。 10-09 12:14:21.402 D/Mono
(18729):探测'java_interop_jnienv_call_float_method_a'。 10-09 12:14:21.402 D /单音(18729):找到 'java_interop_jnienv_call_float_method_a'。 10-09 12:14:21.487 I /编舞师(18729):跳过52帧!该应用可以是 做它的主线程的工作太多了。 [警告:data_reduction_proxy_config.cc(423)] SPDY代理OFF在 启动12月10日至9日:14:21.506 W /铬(18729): [警告:data_reduction_proxy_config.cc(423)]在SPDY启动 10代理OFF -09 12:14:21.570 W/BindingManager的(18729):无法调用 determinedVisibility() - 从没见过的PID的连接:18729 12月10日至9日:14:21.824 W/BindingManager的(18729):无法调用 determinedVisibility () - 从没见过的PID的连接:18729
预先感谢您
请检查网址是否正确,并请尝试使用您的测试设备/模拟器的浏览器打开您的网站,检查它是否可以正确打开。 –
该网址是正确的,我可以用设备/模拟器的浏览器打开它。如果我按住白色/空白页面,我可以选择“全选”和“复制”。之后,我将它粘贴在便条中,我可以看到我的网站的内容。怎么了? – Mikasa
我想这是布局或样式的问题,你可以请尝试设置webview的大小,看看它是否解决了这个问题? –