SuperAPI AI 工具集

mobile-platform-native-capabilities-integrate

营销与增长

查看项目

更新于 10-15 21:43

技能介绍

用途:帮助在 Salesforce LWC 中集成移动设备原生能力。lightning/mobileCapabilities 模块提供一组工厂函数,返回条码扫描、生物识别、定位、NFC、日历、联系人、文档扫描、地理围栏、支付、AR 空间捕捉、应用内评价等能力的服务对象,每个服务继承 BaseCapability 并带 isAvailable() 方法,便于在桌面或移动网页等不支持的环境优雅降级。

主要能力:按能力索引选择对应服务,加载共享引用(BaseCapability、mobile-capabilities 模块声明)与各能力专属的 TypeScript API 参考,再将服务接入 LWC。

使用方式:从 lightning/mobileCapabilities 导入工厂函数,例如 import { getBarcodeScanner } from 'lightning/mobileCapabilities'; 获取实例后先判断 isAvailable(),再调用非废弃入口(如条码用 scan(),而非 beginCapture/resumeCapture/endCapture),用 try/catch 处理各服务定义的失败码枚举(如 BarcodeScannerFailureCode、LocationServiceFailureCode),区分用户取消、权限被拒、服务不可用等状态并给出可操作提示。

适用场景:用户要求使用上述设备能力的 LWC,或提及 lightning/mobileCapabilities、mobile capability、Nimbus。不适用于移动离线校验(用 mobile-platform-offline-validate)或通用 Lightning 基础组件与 SLDS 样式(用 design-systems-slds-apply)。

限制:这些能力仅在受支持的 Salesforce 移动容器(Salesforce Mobile App、Field Service Mobile App)中可用,桌面和移动网页不可用;工厂仍会返回对象但 isAvailable() 为 false,必须每次调用前判断。isAvailable() 在真机返回 false 通常是应用环境不支持或组织级设置限制,需改配置而非代码。不要凭记忆推断 API,服务会演进且部分方法已标记 @deprecated。一个组件使用多个能力时应各自获取独立实例。