HarmonyOS 鸿蒙Next多渠道打包

发布于 1周前 作者 wuwangju 来自 鸿蒙OS

HarmonyOS 鸿蒙Next多渠道打包
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17

关于HarmonyOS 鸿蒙Next多渠道打包的问题,您也可以访问:https://www.itying.com/category-93-b0.html 联系官网客服。

14 回复

多渠道打包, 多个渠道依赖同一个第三方 har, 但是每个渠道对这个第三方har依赖的版本不同, 使用方式不同。

渠道 能否动态修改 对 某个 第三方har 依赖的版本
如何做

如下面的修改

export function customPlugin(): HvigorPlugin {
    return {
        pluginId: 'customPlugin',
        async apply(currentNode: HvigorNode): Promise<void> {
            const appContext = currentNode.getContext(OhosPluginId.OHOS_APP_PLUGIN) as OhosAppContext;
            const dependency = appContext.getDependenciesOpt({});  //获取dependency依赖
            dependency["@ohos/imageknife"]="^3.0.0"
            console.log(dependency);
            appContext.setDependenciesOpt(dependency );  //修改dependency依赖
        }
    };
}
export default {
    system: appTasks,  /* Built-in plugin of Hvigor. It cannot be modified. */
    plugins:[customPlugin()]         /* Custom plugin to extend the functionality of Hvigor. */
}<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

很喜欢HarmonyOS的卡片式设计,信息一目了然,操作也更便捷。

dependency["@ohos/imageknife"]="^3.0.0" 这个可以啊, 厉害

还有个问题, 想请教下大佬。 我用Har多渠道, 用的是 OhosHarContext OhosHarContext这个类, 怎么获取到当前是给那个渠道打渠道包啊

看官方文档, 没有发现OhosHarContext 有 getCurrentProduct 这个方法

我想到的是创建多个HSP模块,对应三方HAR不同版本,项目用三方HAR某个版本时,使用动态加载HSP模块。

我们是HAR提供方, 供给其他HSP使用的, 就是不知道HAR多渠道打包, 如何动态加载第三方HAR模块

我知道的HAR不能动态加载吧,要打包为HSP才能动态载。

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/ide-build-expanding-context-0000001777620174#section11570115465510

OhosHarContext

Har模块上下文接口信息与OhosHapContext一致,请参考上文中OhosHapContext接口描述

OhosHapContext 这个类里面, 没有 获取当前product的 名称啊

只有 这个 OhosAppContext 有一个 getCurrentProduct

是的,估计是要在APP上下文,才有Product这层配置,其它模块里没有。

嗯嗯, 那HAR,根据渠道的动态化, 只能去手动改了

回到顶部