草庐IT

javascript - 来自 Android WebView 的异步 JavaScript 调用

我正在构建带有WebView的混合Android应用程序,它通过JavaScriptInterface注释与设备通信来自WebView:webView.addJavascriptInterface(someService,"someService");服务实现:@JavascriptInterfacepublicvoidsomeMethod(){//dosomebusinesslogic..}问题是我从JavaScript运行它是这样的:functioncallSomeMethod(){someService.someMethod()};这个调用是同步的,并且想要一些异步运行的东西,比

android - 长按 Web View 时水平菜单膨胀器

我在longClick上的webview选择有问题。我已经实现了在longClick上启动的自定义菜单。但默认菜单也在启动。我正在尝试自定义默认菜单,但我不知道如何捕获用户对项目的点击。我尝试了以下方法,但是菜单变得垂直并且隐藏了选择,所以我无法选择更多的单词或更改选择。@OverridepublicvoidonCreateContextMenu(ContextMenumenu,Viewv,ContextMenu.ContextMenuInfomenuInfo){super.onCreateContextMenu(menu,v,menuInfo);MenuInflaterinflate

java - 当离开主线程时,我怎样才能让一些代码尽快在主线程上运行?

我有一个部分基于网络(WebView)的用户界面。它通过JavascriptInterface连接到AndroidUI.当您点击WebView中的一个元素时,javascript调用Android并且Android在javascript/web线程上接收调用。不是UI(主)线程。它在1毫秒或更短时间内到达Android。没问题。但是,因为我现在想更改UI,所以我必须切换到UI线程。(如果您在主线程之外修改UI,Android会抛出异常)。我目前正在UI线程上使用处理程序并调用post().此代码(一个Runnable)随后会在120到300毫秒之间的任何地方被调用。这是UI从用户触摸改

javascript - 在 Android webview 上,当我执行 javascript 时,sotfkeyboard 消失了

在WebView中,当我通过webview.loadUrl()执行JavaScript时,如果软键盘可见,它就会消失。当我尝试在html文本字段中键入一些文本时,软键盘消失(如果执行JavaScript)并且我无法键入所有文本。文本字段没有失去焦点,所以提示仍然在文本字段上,但是软键盘下降了。谁能告诉我如何解决这个问题? 最佳答案 最简单的方法是将javascript调用存储在插件或JavascriptInterface中,并在执行它的javascript端重复方法。这样loadUrl永远不会被调用。类似于:StringBuilde

android - 我如何使用 Android 使用 webView 下载基于 session /cookie 的文件?

我正在尝试使用webView从文件主机(如zippyshare.com)下载文件。问题是,我无法使用intents打开浏览器,或通过DownloadManager重新路由它,因为它是基于session/cookie的,启动这些方法会将zip文件重定向到原始html文件以重新下载。我试过:Urisource=Uri.parse(url);DownloadManager.Requestrequest=newDownloadManager.Request(source);Stringcookie=CookieManager.getInstance().getCookie(url);reque

java - 闩锁(用于等待异步响应)卡住 WebView(和 UI)

我有一个在整个布局上显示WebView的应用程序。有时我需要调用一个异步方法,那个异步操作是由3方sdk完成的,然后我等待一段时间,直到我得到指定监听器的响应。我已经用闩锁解决了这个问题——一旦在监听器中收到响应,我就倒计时闩锁,然后启动方法可以继续这个响应。不幸的是,当我这样做时,WebView卡住了。本以为原生UI会卡死,没想到webview也卡死了。如何克服?为了更清楚地说明,这里有一个例子。我需要ajaxFunc等到MyAsyncListener得到某个响应,然后返回这个确切的响应。我注入(inject)到webview的部分JS:varresponse=jsHandler.a

android - 如何将存储在字节数组中的图像加载到 WebView?

各位!我已经将很多图片压缩到一个“pictures.zip”文件中。我想像这样将其中一张图片加载到WebView中:WebViewwv=(WebView)findViewById(R.id.WebView01);wv.loadDataWithBaseURL(null,"","text/html","UTF-8",null);这里,"abc.jpg"是压缩成pictures.zip文件的图片。我只是想从zip文件中解压图片得到图片的字节流,然后将图像加载到WebView从字节流。我不想解压压缩文件中的图片,然后保存到sdcard,然后加载。此外,我不想对将图片的字节转换为base64,然

android - 获取android中用户的语言

http://web.archiveorange.com/archive/v/fwvde0wN3xcViMtADw6xnavigator.language属性在android的webview中似乎总是“en”。那么,获取用户语言的最佳方式是什么?在nativejava代码中获取它并通过javascript将其注入(inject)webview?或者其他更好的方法? 最佳答案 我发现这个问题的解决方案是通过webview的设置来设置用户代理:WebSettingssettings=wv.getSettings();settings.s

java - 在 WebView android 中启用缩放

我无法在Android中的WebView上启用缩放限制我是编程新手,已经尝试了所有方法都无法解决问题。新来的,我不能附上图片。WebViewActivity.javapackagecom.mkyong.android;importandroid.app.Activity;importandroid.os.Bundle;importandroid.webkit.WebView;importandroid.webkit.WebViewClient;publicclassWebViewActivityextendsActivity{privateWebViewwebView;publicvo

android - 无法在 WebView 中键入

我在与WebView交互时遇到问题。我在WebView中显示一个HTML登录表单,但我无法在表单的任何输入字段中键入内容。我确实可以与链接、选择框、按钮等进行交互。这是我的代码示例。基本上,我从xml中检索WebView并将其设置为WebViewClient和WebChromeClient。webview=(WebView)findViewById(R.id.loginWebview);webview.getSettings().setJavaScriptEnabled(true);WebViewClientclient=newWebViewClient();webview.setWe