问题标签 [webchromeclient]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android WebView WebChromeClient:onProgressChanged() 中的进度值不准确
我需要访问 WebView -> WebChromeClient -> onProgressChanged() 中的进度值。进度整数值不会从 0 增加到 100,而是跳跃。这是加载一个页面的示例日志输出和相关的进度号:
我究竟做错了什么?
代码:
android - 如何处理在 webChromeClient 回调中按下的按钮?
如何使webChromeClient()
calss 的回调句柄和监听按钮?我遇到的问题是,我有一个button
和一个edittext
字段,它们都在 a 中RelativeLayout
,并且在webView
它们上方布局,所以我可以避免将显示网页的内容与button
和混合edittext
。具有edittext
字段的目的是允许用户输入网页名称。并且拥有a的目的button
是启动用户输入的网页。我还在webClientView
回调中使用类和 toastonPageFinished
来在网页完成加载时通知我。但是每当我按下button
启动字段中指定的网页时edittext
,回调onPageFinish
甚至在网页完成加载之前总是被调用。例如,如果我在 中指定一个网站地址edittext
并button
反复按 ,我将获得与按次数一样多的 toast 输出button
。请参阅我在此处发布的问题,该问题几乎与同一问题有关。尽管它部分解决了我的问题,但当我编写应用程序的需求时,我意识到我在此处引用的问题的答案 是接缝的,或者是不够的。有没有办法使用webChromeView
类来解决这个问题?如何?
Java代码:
java - webview上的Android地理定位
我需要从 web 视图中获取用户的位置,并且它不要求我获得获取位置的权限。下面是我的 webview 代码:
网络视图设置
WebChrome客户端:
网络视图客户端:
它没有征求我的许可,我不知道为什么,任何人都可以看到我要去哪里错了吗?提前致谢!
java - Android 请求在 webview 中使用位置的权限
我有一个使用 webview 的应用程序,并且 webview 内部是一张地图,我已经让它工作,用户可以使用以下代码自动找到用户位置:
清单文件权限:
网络视图活动:
网页视图设置:
网络视图客户端:
WebChrome客户端:
所以这是可行的,但它会自动获取用户的位置,而不提示用户应用程序是否可以使用位置服务。
有没有办法将此功能添加到应用程序?谢谢
java - 触发 WebChromeClient onRequestFocus
我正在尝试触发WebChromeClient.onRequestFocus()
回调。为了获取有关何时调用的信息,我深入研究了 android 项目测试。
我从 2009 年开始搜索WebChromeClient 的测试用例,并创建了以下代码来重现测试行为,这似乎不起作用。
调试会话的 Logcat 确认调用onCreateWindow()
了onCloseWindow()
函数,但没有onRequestFocus()
调用。
有任何想法吗?
我使用 API 级别 19 (Android 4.4)
bitmap - WebChromeClient.onReceivedIcon 的图标稍后在 Android 4.4+ 中被回收
public void onReceivedIcon(WebView 视图,位图图标)
在我的代码中,当这个回调被调用时,我会保留一个图标的引用,它将保留很长时间。我需要将其显示为历史项目的图标,它适用于除 Android 4.4+ 之外的所有 Android 版本,在 4.4 中我遇到如下崩溃:
java.lang.RuntimeException: Canvas: 试图使用回收的位图 android.graphics.Bitmap@65189840
所以我的问题是,Android 4.4 会自动回收这个方法收到的图标吗?Android doc对此只字未提,在早期版本中似乎也没有做这项工作。有人知道吗?我只发现调用从 chromium/src/android_webview/native/aw_contents.cc#onReceivedIcon(const GURL& icon_url, const SkBitmap& bitmap) 函数开始,但是这个方法在哪里调用以及 SkBitmap 的回收发生在哪里???
铬中的一些相关代码是首选,在此先感谢。
android - 未调用 Android WebView openFileChooser
我无法openFileChooser()
工作。我不在 Android KitKat 上(我们知道这种方法在 4.4 上不再适用)。我尝试了不同的解决方案,但也没有用。
这是html:
这是我的 WebChromeClient 类:
您可以在 openFileChoser() 方法中看到这一行Log.i("WebChromeClient", "openFileChooser() called.");
- LogCat 中没有任何内容。
和 onActivityResult():
你知道问题可能出在哪里吗?
android - 设备android中的WebChromeClient不起作用
我有这个带有加载 webview 的代码,它使用谷歌浏览器的属性。
问题是 webview 的模拟器加载了一个包含 html5 的 url 并且它运行良好,但是在使用默认浏览器和 html5 属性的 android 设备上显然无法使用 url。
我如何才能在 android 设备中使用 Google Chrome 浏览器的属性而不是默认浏览器的属性?
有什么帮助吗?
谢谢
android - Android 同时使用 WebViewClient 和 WebChromeClient
我需要操作 html 中的链接,所以我使用 WebViewClient 来完成它。问题是我有一些加载本地 html 页面的 iframe 并且它们没有被显示。但是,如果我使用 WebChromeClient 他们可以工作!
所以,我想同时使用它们,但它不起作用。似乎只有 webViewClient 有效,我不知道为什么。
我在清单中设置了 Internet 权限并写入外部存储(因为我的 html 位于存储中)并启用了硬件加速。
这是我的代码:
虽然在片段 OnCreateView 方法中(是的,我在 PageViewer 中使用 webview,但我认为知道这一点并不重要)。
android - 每小时运行一次以从 Webservice 获取数据并更新 localStorage webview chromeclinet 的 Android 服务
在我的 Android 应用程序中,我正在从中检索数据localStorage
并显示在listview
. 现在我希望它即使在应用程序关闭时也能从 web 服务中获取更新的数据。
我正在使用webchromeclient
. 我已经尝试过服务,但它只从应用程序开始,localStorage
当应用程序关闭或销毁时我无法与之交互,我试图在警报时触发服务
代码: