调用方传入的want参数中设置uri和type参数发起启动应用组件的请求,系统会遍历当前系统已安装的组件列表,并逐个匹配待匹配应用组件的skills配置中的uris数组,如果待匹配应用组件的skills配置中的uris数组中只要有一个可以匹配调用方传入的want参数中设置的uri和type即为匹配成功。实际应用中,uri和type共存在四种情况,下面将讲解四种情况的具体匹配规则:调用方传入的want参数的uri和type都为空。如果待匹配应用组件的skills配置中的uris数组为空,匹配成功。如果待匹配应用组件的skills配置中的uris数组中存在uri的scheme和type都为空的元素,匹配成功。除以上两种情况,其他情况均为匹配失败。调用方传入的want参数的uri不为空,type为空。如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。如果待匹配应用组件的skills配置中的uris数组存在一条数据uri匹配成功且type为空,则匹配成功,否则匹配失败。如果前两条均匹配失败,并且传入的uri为文件路径uri,则根据文件后缀获取文件的MIME类型,如果该类型与skills文件中配置的type相匹配,则匹配成功。调用方传入的want参数的uri为空,type不为空。如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。如果待匹配应用组件的skills配置中的uris数组存在一条数据uri的scheme为空且type匹配成功,则匹配成功,否则匹配失败。调用方传入的want参数的uri和type都不为空,如下图所示。如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。如果待匹配应用组件的skills配置中的uris数组存在一条数据uri匹配和type匹配需要均匹配成功,则匹配成功,否则匹配失败。最左uri匹配:当配置文件待匹配应用组件的skills配置中的uris数组中只配置scheme;或者只配置scheme和host;或者只配置scheme、host和port时。传入want参数的uri的最左边依次需要和scheme,或者scheme和host,或者scheme、host和port都匹配,才满足最左uri匹配。本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。
调用方传入的want参数中设置uri和type参数发起启动应用组件的请求,系统会遍历当前系统已安装的组件列表,并逐个匹配待匹配应用组件的skills配置中的uris数组,如果待匹配应用组件的skills配置中的uris数组中只要有一个可以匹配调用方传入的want参数中设置的uri和type即为匹配成功。
实际应用中,uri和type共存在四种情况,下面将讲解四种情况的具体匹配规则:
调用方传入的want参数的uri和type都为空。
如果待匹配应用组件的skills配置中的uris数组为空,匹配成功。
如果待匹配应用组件的skills配置中的uris数组中存在uri的scheme和type都为空的元素,匹配成功。
除以上两种情况,其他情况均为匹配失败。
调用方传入的want参数的uri不为空,type为空。
如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。
如果待匹配应用组件的skills配置中的uris数组存在一条数据uri匹配成功且type为空,则匹配成功,否则匹配失败。
如果前两条均匹配失败,并且传入的uri为文件路径uri,则根据文件后缀获取文件的MIME类型,如果该类型与skills文件中配置的type相匹配,则匹配成功。
调用方传入的want参数的uri为空,type不为空。
如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。
如果待匹配应用组件的skills配置中的uris数组存在一条数据uri的scheme为空且type匹配成功,则匹配成功,否则匹配失败。
调用方传入的want参数的uri和type都不为空,如下图所示。
如果待匹配应用组件的skills配置中的uris数组为空,匹配失败。
如果待匹配应用组件的skills配置中的uris数组存在一条数据uri匹配和type匹配需要均匹配成功,则匹配成功,否则匹配失败。
最左uri匹配:当配置文件待匹配应用组件的skills配置中的uris数组中只配置scheme;或者只配置scheme和host;或者只配置scheme、host和port时。传入want参数的uri的最左边依次需要和scheme,或者scheme和host,或者scheme、host和port都匹配,才满足最左uri匹配。
本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。