HarmonyOS 鸿蒙Next 使用外链拉起浏览器时,勾选30天不再提示不生效的问题如何解决

发布于 1周前 作者 wuwangju 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 使用外链拉起浏览器时,勾选30天不再提示不生效的问题如何解决

【问题现象】

在应用内部打开外链时,第一次弹窗之后勾选了30天不再弹窗,在不清掉应用的情况下,再次点击跳转外链还是会弹窗。

问题代码如下:

let want: Want = {
    action: 'ohos.want.action.viewData',
    entities: ['entity.system.browsable'],
    abilityName: 'MainAbility',
    uri: 'https://developer.huawei.com/consumer/cn/blog/topic/03147442746907029',
}
let uiContent = getContext() as common.UIAbilityContext
uiContent.startAbility(want)

【背景知识】

  • Want是一种对象,用于在应用组件之间传递信息。
  • 常见的使用场景是作为startAbility()方法的参数。例如,当UIAbilityA需要启动UIAbilityB并向UIAbilityB传递一些数据时,可以使用Want作为一个载体,将数据传递给UIAbilityB。

【定位思路】

观察代码可以发现,上述代码在通过startAbility(wangt)拉起浏览器的时候,want参数填写是有问题的,正常来说设置了abilityName字段同时也需要设置bundleNmae才能正确的设置显示拉起。或者就是两个字段都不设置,让系统隐式拉起。基于这个思路尝试修改代码,看是否解决问题。

【解决方案】

基于问题代码,补充want信息的bundleName字段,或者去掉abilityName字段:

(1)如果需要显示拉起,就添加上bundleName。

代码示例如下:

let want: Want = {
     action:'ohos.want.action.viewData',
     entities: ['entity.system.browsable'],
     abilityName:'MainAbility',
     bundleName:'xxx',
     uri:'https://developer.huawei.com/consumer/cn/blog/topic/03147442746907029',
 }
 let uiContent =getContext() as common.UIAbilityContext
 uiContent.startAbility(want)
 

(2)如果需要隐式拉起,则去掉abilityName。

代码示例如下:

let want: Want = {
    action: 'ohos.want.action.viewData',
    entities: ['entity.system.browsable'],
    uri: 'https://developer.huawei.com/consumer/cn/blog/topic/03147442746907029',
}
let uiContent = getContext() as common.UIAbilityContext
uiContent.startAbility(want)

最终验证这两种方式都可以解决跳转系统浏览器时,勾选不再提示不生效的问题。

1 回复

针对HarmonyOS鸿蒙Next使用外链拉起浏览器时,勾选“30天不再提示”不生效的问题,以下是一些可能的解决方案:

  1. 检查系统权限:确保鸿蒙系统已授予应用相应的权限,特别是访问网络和打开其他应用的权限。这些权限是拉起外部应用或浏览器时的关键。
  2. 验证外链格式:确保分享的外链格式正确,包括协议头(如http://或https://)和完整的URL路径。格式错误可能导致系统无法正确解析外链。
  3. 更新系统版本:有时系统更新可能修复已知的兼容性问题。请确保鸿蒙系统和相关应用都已更新到最新版本。
  4. 浏览器设置:检查浏览器的设置,确保没有禁用或限制打开外部链接的选项。
  5. 缓存和Cookie清理:清理浏览器缓存和Cookie,有时这些临时数据可能干扰外链的正常拉起。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。他们将为你提供更专业的帮助。

回到顶部