plus在鸿蒙上报错TypeError: plus.runtime.isApplicationExist is not a function

plus在鸿蒙上报错TypeError: plus.runtime.isApplicationExist is not a function

开发环境 版本号 项目创建方式
Windows win11 HBuilderX
产品分类:uniapp/App

PC开发环境操作系统:Windows

HBuilderX类型:正式

HBuilderX版本号:4.57

手机系统:HarmonyOS NEXT

手机系统版本号:HarmonyOS NEXT Developer Beta2

手机厂商:华为

手机机型:p40 pro

页面类型:vue

vue版本:vue3

打包方式:云端

示例代码:
TypeError: plus.runtime.isApplicationExist is not a function
之前的项目好多用了plus的api,适配鸿蒙,要修改的plus相关的api太多了,有什么解决办法
操作步骤:
TypeError: plus.runtime.isApplicationExist is not a function
之前的项目好多用了plus的api,适配鸿蒙,要修改的plus相关的api太多了,有什么解决办法
预期结果:
TypeError: plus.runtime.isApplicationExist is not a function
之前的项目好多用了plus的api,适配鸿蒙,要修改的plus相关的api太多了,有什么解决办法
实际结果:
TypeError: plus.runtime.isApplicationExist is not a function
之前的项目好多用了plus的api,适配鸿蒙,要修改的plus相关的api太多了,有什么解决办法
bug描述:
TypeError: plus.runtime.isApplicationExist is not a function
之前的项目好多用了plus的api,适配鸿蒙,要修改的plus相关的api太多了,有什么解决办法

更多关于plus在鸿蒙上报错TypeError: plus.runtime.isApplicationExist is not a function的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

鸿蒙不能用plus吧

更多关于plus在鸿蒙上报错TypeError: plus.runtime.isApplicationExist is not a function的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


这是由于鸿蒙系统(HarmonyOS NEXT)不支持部分5+ Runtime API导致的。针对这个问题,建议采用以下解决方案:

  1. 条件编译处理:
// #ifdef APP-PLUS
plus.runtime.isApplicationExist(packageName)
// #endif

// #ifdef HARMONY
// 鸿蒙替代方案
// #endif
  1. 对于isApplicationExist功能,可以使用鸿蒙提供的bundleManager模块替代:
import bundleManager from '[@ohos](/user/ohos).bundle.bundleManager';
try {
  const bundleInfo = await bundleManager.getBundleInfo(packageName);
  return !!bundleInfo;
} catch(e) {
  return false;
}
回到顶部