三方依赖如何根据场景进行添加依赖。

三方依赖如何根据场景进行添加依赖。

若有一个sdk工程。sdk有两个端在使用(用户端和司机端),两端三方依赖有所不同。能否根据端口添加依赖。

例如:

"dependencies": { "if(司机端){ 添加高德依赖 }else{ 添加百度地图依赖}"}

HarmonyOS
2024-06-04 23:31:56
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
好难的昵称

可以通过js去修改json5里面的字段,在编译的时候,根据条件通过fs读写json5文件去修改里面的key对应的值。

示例代码:

const fs = require('fs'); 
let modulePath = path.resolve(projectRootPath, `./oh-package.json5`) 
let rawData = fs.readFileSync(modulePath); 
let moduleJson = JSON.parse(rawData); 
let metaData = moduleJson.dependencies; 
 
if (true) { 
  findAndReplaceHmsId(metaData, clientIdConfig.prod); 
} else { 
  findAndReplaceHmsId(metaData, clientIdConfig.mirror); 
} 
let data = JSON.stringify(moduleJson, null, 2); 
fs.writeFileSync(modulePath, data); 
 
function findAndReplaceHmsId(metaData, id) { 
  for(let item of metaData) { 
    if (item.name === "client_id") { 
      item.value = id; 
      break; 
    } 
  } 
}
分享
微博
QQ
微信
回复
2024-06-05 20:01:44
相关问题
HSP间接依赖三方库编译报错
372浏览 • 1回复 待解决
如何本地依赖非适配HarmonyOS的三方
1115浏览 • 1回复 待解决
多so相互依赖场景如何解耦
1918浏览 • 1回复 待解决
如何获取可用的三方
1644浏览 • 1回复 待解决
HarmonyOS如何移植第三方MCU?
9040浏览 • 1回复 待解决
三方应用如何获取http代理信息
1636浏览 • 1回复 待解决
三方应用如何获取蓝牙mac地址
2103浏览 • 1回复 待解决
HarmonyOS 三方so如何访问rawfile文件
240浏览 • 1回复 待解决