官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V2/syscap-0000001408089368-V2
判断API是否可以使用
方法1:HarmonyOS定义了API canIUse帮助开发者来判断该设备是否支持某个特定的SysCap
if (canIUse("SystemCapability.ArkUI.ArkUI.Full")) {
console.log("该设备支持SystemCapability.ArkUI.ArkUI.Full");
} else {
console.log("该设备不支持SystemCapability.ArkUI.ArkUI.Full");
}
方法2:开发者可通过import的方式将模块导入,若当前设备不支持该模块,import的结果为undefined,开发者在使用API时,需要判断其是否存在。
import geolocation from '@ohos.geolocation';
if (geolocation) {
geolocation.getCurrentLocation((location) => {
console.log(location.latitude, location.longitude);
});
} else {
console.log('该设备不支持位置信息');
}
扩展系统能力
系统能力可以通过在DevEco Studio 导入PCID(Product Capability ID)文件扩展,PCID导入可参考:
zh-cn/application-dev/reference/syscap.md · OpenHarmony/docs - 木兰确实 (mulanos.cn)
网上关于系统能力的扩展是导入PCID文件,经过本人实际的操作摸索发现,这种情况接上真实设备就可以具备对应的系统能力,进而可以调用相关的api接口