问题标签 [trusted-web-activity]

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.

0 投票
3 回答
290 浏览

progressive-web-apps - 如何在受信任的 Web 活动 (TWA) 中禁用拉取刷新行为?

我的 PWA 应用程序在 main.css 文件中有此代码。

当添加到主屏幕并以全屏模式启动时(在 manifest.json 中设置),下拉刷新按预期禁用。

但是,在 TWA 情况下:

当我使用https://github.com/GoogleChromeLabs/bubblewrap pull-to-refresh 行为创建签名的 APK 时,没有禁用。

有什么解决办法吗?

0 投票
1 回答
128 浏览

android-webview - 如何在应用内浏览器或 android webview 中隐藏 div

我在从受信任的 Web 活动打开的自定义选项卡中隐藏 div 中提出了一个问题, 让我再解释一下。

我的 twa 网站是https://www.monsoonmalabar.com/ 在上面的网站中有一个指向外部网站的链接https://keralapsc.monsoonmalabar.com/在 twa 应用程序中单击此链接时,此链接将在-应用浏览器。在该应用内浏览器(网站:https ://keralapsc.monsoonmalabar.com )中,左侧有一个带有链接的按钮https://play.google.com/store/apps/details?id=com.monsoonmalabar.app

当用户使用 twa(应用内浏览器)时,我想隐藏该链接(按钮)。根据您在 stackoverflow 站点中的建议,我将外部链接添加为https://keralapsc.monsoonmalabar.com/?hideDiv=true
并在外部站点中添加了代码为

现在发生的情况是在 twa(具有 hideDive=true)的第一次访问期间,按钮消失了。但是,当我通过转到另一个页面继续浏览外部站点时,该外部站点按钮再次显示。也许我没有正确理解你。你能用代码解释一下吗?我是编码新手。我的 twa 应用程序是https://play.google.com/store/apps/details?id=com.monsoonmalabar.app

以下是标记的外部链接的屏幕截图。

在此处输入图像描述

0 投票
1 回答
391 浏览

android - 受信任的 Web 活动:从重定向的 URL 导航回本机活动

我已经构建了一个应用程序,它使用受信任的 Web 活动与网站建立连接。重定向到网站后,我需要通过单击网站上的按钮导航回本机活动。我如何实现这一目标?面临麻烦,因为一旦完成重定向,我就无法控制。

0 投票
1 回答
334 浏览

android - 验证受信任的 Web 活动以隐藏应用程序中的地址栏

我正在尝试发布我的 PWA Google Play,但是当应用程序打开时,我无法让它在 Chrome 中隐藏地址栏。

似乎需要将文件添加到服务器,我这样做了

https://crux.commonms.com/ppo/.well-known/assetlinks.json

使用此应用程序提供的信息:

https://developers.google.com/digital-asset-links/tools/generator

但是当我尝试用我的数据填充它时:

当我单击时'Test Statment'出现“输入字段无效”错误,这可能是因为我在服务器内的文件夹(“ppo”)中有应用程序,但它就在那里。

我正在寻找解决方案,还有另一个问题

TWA - 数字资产链接正常,但地址栏仍然可见

他们向其推荐此应用程序

https://play.google.com/store/apps/details?id=dev.conn.assetlinkstool&hl=en

我也试过了,但地址栏仍然可见。

0 投票
1 回答
2163 浏览

java - 如何使用 TWA 全屏制作 Android 应用(沉浸式)

我们制作了一个当前使用 WebView 全屏显示 Web 内容的 Android 应用程序。

这可行,但性能很大程度上取决于 WebVeiw 组件的版本,并且在 Chrome 浏览器更新时并不总是更新(在不同的 Android 版本中,WebView 组件和 Chrome 浏览器之间存在相对复杂的关系)。从谷歌关于该主题的演示中我们得出结论,使用 TWA 我们可能会获得更好和更一致的性能,因为 TWA 功能与 Chrome 浏览器一起更新。因此,我们希望在 TWA 不存在时使用 TWA 并回退到 WebView(我们的应用程序在 Android 4.4 和更高版本上运行)。

该应用程序需要执行更多的逻辑,而不仅仅是显示 Web 内容,因此我们无法仅在 Manifest 中定义 TWA/WebView。检查是否能够使用 TWA 并在 MainActivity.java 中启动 TWA 或回退到 WebView。但是,使用 TWA 时,URL/地址栏和底部导航栏仍然可见。

URL/地址栏:据我们所知,要使 TWA 不显示 URL/地址栏,TWA 中显示的域必须有一个与证书“匹配”的 /.well-known/assetlinks.json 文件安卓应用。包含有关此信息和有用链接的两个页面是https://developers.google.com/web/android/trusted-web-activity/integration-guidehttps://developer.android.com/training/app-links/验证站点关联。assetlinks.json 是使用https://developers.google.com/digital-asset-links/tools/generator创建的,并通过 https://digitalassetlinks.googleapis.com/v1/statements:list?source.web 成功检查。站点=website_url&relation=delegate_permission/common.handle_all_urls

在虚拟设备(Android API 级别 29,Chrome v83)上测试期间,我们启用了 Chrome 的“在非 root 设备上启用命令行”标志,并在终端中执行了

之后,Chrome 会显示一条警告消息,但 URL/地址栏仍然存在。

底部导航栏:Chrome v80 和更新版本应支持使用沉浸式选项删除底部导航栏:https ://bugs.chromium.org/p/chromium/issues/detail?id=965329#c18 尽管使用描述的创建选项全屏应用程序(https://developer.android.com/training/system-ui/immersive#java)底部导航栏仍在显示。

我们如何删除 URL/地址栏和底部导航栏,基本上我们如何使 TWA 中的网页内容全屏显示?

我们查看了以下示例应用程序,以了解我们需要做什么才能使 TWA 正常工作,但没有发现任何工作(尽管我们错过了一些重要的东西并非不可想象):

我们项目文件的相关内容:

清单.json

MainActivity.java

构建.gradle

构建.gradle

/.well-known/assetlinks.json

0 投票
1 回答
141 浏览

android - 受信任的 Web 活动 - 屏幕方向

从处于纵向模式的应用程序打开 url (TWA) 时,如何将默认方向设置为横向?(TWA 从应用程序的第二个活动启动)

0 投票
0 回答
113 浏览

trusted-web-activity - 没有先运行 chrome 浏览器,TWA 应用程序无法独立运行

如果不先运行 chrome 浏览器,TWA 应用程序会在闪屏处阻塞。但先运行浏览器后,TWA 应用程序运行正常。为什么?

0 投票
0 回答
148 浏览

google-chrome - 如何在受信任的 Web 活动应用程序中禁用页面缓存?

我为我的一个朋友创建了一个受信任的网络活动应用程序。链接:https ://play.google.com/store/apps/details?id=com.grodudes.app 它工作得非常好,但我面临一个小问题,即使设备在线,它也会显示缓存页面导致问题,例如即使用户已登录,但在移动到其他页面时仍显示用户已注销。重新加载页面可以解决此问题。我该如何解决?

0 投票
0 回答
134 浏览

java - 如何更新 Android TWA 的 URL?

因此,我们的 PWA 已经处理了通知它转到新 URL 的推送通知。我启动并运行了 TWA,推送通知正在工作,除了它们什么都不做,它们只是打开应用程序。我可以使用获取通知中的数据

我找不到的是如何告诉 TWA 在它已经启动后转到新 URL?不能更新 TWA 的 URL 吗?

0 投票
1 回答
540 浏览

android - APK 中的 PWA:为什么它与 Android API 隔离?

当您将 Progressive Web App 放入 APK 以在 Goolge Play 上销售时,例如通过使用 Bubblewrap 和 Trusted Web Activity,PWA 无法与 Android API 交互。正确的?如果我误解了这一点,请纠正我并将我指向文档。

因此,即使它是一个 APK,并且它来自像 Google Play 这样的可信来源,它运行的代码 (Javascript) 也不会被允许执行普通 Android 应用程序可以执行的相同操作。这背后的理由是什么?Google 的使命是让 PWA 与原生应用程序一样强大,所以这对我来说毫无意义。

例如,我需要从我的 PWA 访问文件系统。我的意思是真正的访问,而不是像即将推出的本机文件系统 API 那样的中性访问。用户在安装时接受文件访问,然后我的应用程序可以做它想做的任何事情。所以我想我只是使用 Android API 来获得访问权限,但它们是不受限制的。你是如何在自己的 PWA 中解决这个问题的?