问题标签 [geckoview]
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 - 在 GeckoView 中以编程方式放大页面?
当我双击页面时,它会放大。但是如何在 GeckoView 中以编程方式实现相同的效果?
android - 在 GeckoView for Android 中允许跨域请求
我构建了一个媒体控制 web 应用程序,通过使用设备的 web API 用一个应用程序控制我的电视和 av-receiver。目前我通过 ajax 请求调用 PHP 脚本,PHP 脚本使用 curl 进行 API 调用。所以我对跨域请求没有任何问题。但我总是必须运行一个网络服务器。理论上可以直接向 Web API 发出 ajax 请求,但随后出现跨域请求错误。而且我无法配置设备的 http 标头。所以问题是:默认情况下是否可以在 GeckoView 中允许跨域请求?
compatibility - 尝试使用 GeckoView 制作浏览器时出现 java.lang.ClassNotFoundException
我在 Java 编程方面非常新手。尝试使用本地存储的 GECKOVIEW 库创建浏览器时遇到错误消息。构建完成,但应用程序崩溃。非常感谢您的帮助,因为我非常卡住,事实证明很难找到有关 GeckoView 出现问题的信息。
错误信息:
(底部的完整错误消息)
构建 Gradle:应用程序:
GeckoView 库被复制粘贴到项目库文件夹中。
构建 Gradle 项目:
主要活动:
完整的错误信息:
android - 使用 GeckoView Android 与 Web 内容进行本机消息传递
我正在尝试创建一个仅使用 GeckoView 作为 webview 的混合应用程序。我正在关注此链接以建立本机和 HTML/Javascript 之间的通信。我正在使用基于连接的消息传递。到目前为止,我能够从本机接收消息并将消息从后台脚本发送回本机。但我无法执行以下操作:
显示来自后台脚本的消息:我试图在后台脚本中显示自定义事件的值,但它不起作用。代码如下:
}
我试图从内容脚本发送消息,但它也不起作用,因为我正在获取浏览器未定义。
我曾尝试使用 chrome 而不是浏览器,但它给出了相同的结果。我正在使用 78.0.20200601093812 版本的 GeckoView。我的仅后台脚本清单如下:
firefox-addon-webextensions - 如何将 JS 注入 Android 中的 GeckoView?
在迁移到 GeckoView 的 77.0.20200603183750 版本之前,我们使用的是 71.0.20191208234333 版本,所以我们必须更改 imp. WebExtension 实例,它只采用一个参数,即 JS 文件的位置
从:
至:
虽然 JS 注入成功,但这会导致无法传递网页的当前状态。由于此操作,Session.loading
即使页面加载成功,布尔字段仍然为真。
我们在迁移到新版本时使用了firefox-source-docs,我们无法在 .77 版的实例上调用ensureBuiltIn
方法。WebExtensionController
GeckoView
根据上面的文档,我们需要像下面那样调用 ensureBuiltIn 方法,但我们不能调用,因为它在编译的 WebExtension.class 中变成了内部方法。
在 GeckoView 中迁移到新版本的 WebExtension 时,是否有人帮助我们了解我们所缺少的内容?
java - android 应用程序中的 Geckoview 因错误“java.lang.Exception:加载 sqlite 库时出错”而崩溃
我已经在这里和其他地方阅读了很多关于 geckoview 的文章和操作指南,但我没有找到任何解决我的问题的方法。我在我的 android 应用程序中集成了 geckoview(作为 webview 的替代品)。我按照howtos中的说明做了所有事情,但此刻,活动想要显示,应用程序崩溃,错误“java.lang.Exception:加载sqlite库时出错”。有人可以帮助我吗?
build.gradle(模块)
活动 xml
活动顶部
创建活动
堆栈跟踪
android - 在 Android 上使用 Geckovow 发送代理身份验证请求
我正在使用 Android 上的 Geckoview 构建一个概念验证浏览器。作为要求的一部分,我需要能够将其配置为通过代理服务器进行身份验证。我已经尝试了各种配置选项,但似乎无法在从代理服务器收到 407 时弹出一个带有代理身份验证请求的对话框或发送存储的凭据。请求在没有身份验证信息的情况下到达代理,服务器以 407 响应。
当我在模拟器中执行 about:config 并尝试了诸如 network.automatic-ntlm-auth.allow_proxies (true,false) 之类的设置时,我确实看到了配置选项设置。有人可以建议在 geckoview 中设置和 http(s) 代理所需的最低设置。
android - Mozilla EngineView Geckoview 渲染的元素隐藏在工具栏后面
使用 android mozilla 移动 android 组件构建浏览器。我有一个动态顶部工具栏和一个动态底部工具栏覆盖 mozilla.components.concept.engine.EngineView (在幕后使用 Geckoview)。工具栏在引擎视图滚动时显示/隐藏。
问题是网页元素隐藏在本机工具栏后面。例如 youtube.com 主页具有基于 html 的动态顶部和底部工具栏,它们隐藏在我的本机工具栏后面。
mozilla.components.feature.session.behavior.EngineViewBottomBehavior 类更改操作方法告诉 engineview 在哪里放置元素。如果我的应用程序中有一个工具栏,这将有效。例如,如果我只有一个顶部工具栏,那么 topToolbarChangedAction() 设置垂直剪辑,并且 youtube.com html 顶部工具栏放置在我的本机工具栏下方。但是,当我有 2 个工具栏(底部和顶部)需要同时定位顶部和底部的 html 元素时,我不知道如何解决。下面是来自 mozilla 行为类的代码片段,其调用如下
android - 无法为 gradle build android studio 类型的对象获取未知属性
在我的 android studio 项目中,我的 gradle.build 文件看起来一模一样
但是在运行时./gradlew
我得到了看起来像的错误
我在这里没有发现任何遗漏或错误。我在这里想念什么。
firefox-addon-webextensions - 使用 GeckoView 的 HtmlPage 和 AndroidApp 之间的消息
不幸的是,我使用了一个 WebView 不可用的平台,因此,我无法利用 JavascriptInterface 的简单性从我的网页与我的应用程序进行交互。
是否有一个完整的(直接的)示例解释如何使用 Geckoview 与我的 Android 应用程序交互页面?
我尝试了此页面(和其他)上的步骤:
https://firefox-source-docs.mozilla.org/mobile/android/geckoview/consumer/web-extensions.html
坦率地说,我从来没有见过隐藏这么多细节的页面。
像这样简单的 HTML 页面,托管在“http://example.com/x.html”中(比如说):
安卓端: