在WebView调试的时候,有些链接是打不开的,比如wexin,alipay等等,所以这些链接需要打开的话可以使用外部浏览器来打开,不过没有使用官网文档的Intent的Action参数,而是使用下面的"android.intent.action.VIEW"来打开。

                //弹出系统浏览器
                    Intent intent2 = new Intent();
                    Operation operation = new Intent.OperationBuilder()
                            .withDeviceId("")// 跳转的目的设备,空字符串表示本机
                            .withFlags(Intent.FLAG_NOT_OHOS_COMPONENT)
                            .withUri(Uri.parse("http://www.baidu.com"))
                            .withAction("android.intent.action.VIEW")
                            .build();
                    intent2.setOperation(operation);
                    getContext().startAbility(intent2, 0);

贴下官网文档的Action的参数链接,各位可以自己查看
https://developer.harmonyos.com/cn/docs/documentation/doc-references/intentconstants-0000001054559005

属性

子属性

描述

Operation

Action

表示动作,通常使用系统预置Action,应用也可以自定义Action。例如IntentConstants.ACTION_HOME表示返回桌面动作。

Entity

表示类别,通常使用系统预置Entity,应用也可以自定义Entity。例如Intent.ENTITY_HOME表示在桌面显示图标。

Uri

表示Uri描述。如果在Intent中指定了Uri,则Intent将匹配指定的Uri信息,包括scheme, schemeSpecificPart, authority和path信息。

Flags

表示处理Intent的方式。例如Intent.FLAG_ABILITY_CONTINUATION标记在本地的一个Ability是否可以迁移到远端设备继续运行。

BundleName

表示包描述。如果在Intent中同时指定了BundleName和AbilityName,则Intent可以直接匹配到指定的Ability。

AbilityName

表示待启动的Ability名称。如果在Intent中同时指定了BundleName和AbilityName,则Intent可以直接匹配到指定的Ability。

DeviceId

表示运行指定Ability的设备ID。

Parameters

-

Parameters是一种支持自定义的数据结构,开发者可以通过Parameters传递某些请求所需的额外信息。

如果解决了你的问题,不妨点个赞老铁们~ 

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐