导入模块
import cardEmulation from '@ohos.nfc.cardEmulation';
FeatureType
定义不同的NFC卡模拟类型。
NOTE
从 API version 6 开始支持,从 API version 9 开始废弃,建议使用hasHceCapability替代。
系统能力: SystemCapability.Communication.NFC.CardEmulation
CardType9+
定义卡模拟应用所使用的业务类型,是支付类型,还是其他类型。
系统能力: SystemCapability.Communication.NFC.CardEmulation
isSupported
isSupported(feature: number): boolean
是否支持某种类型的卡模拟。
NOTE
从 API version 6 开始支持,从 API version 9 开始废弃,建议使用hasHceCapability替代。
系统能力: SystemCapability.Communication.NFC.CardEmulation
参数:
返回值:
hasHceCapability9+
hasHceCapability(): boolean
判断是否支持HCE功能。
系统能力: SystemCapability.Communication.NFC.CardEmulation
需要权限: ohos.permission.NFC_CARD_EMULATION
返回值:
isDefaultService9+
isDefaultService(elementName: ElementName, type: CardType): boolean
判断指定的应用是否为指定业务类型的默认应用。
系统能力: SystemCapability.Communication.NFC.CardEmulation
需要权限: ohos.permission.NFC_CARD_EMULATION
参数:
返回值:
示例:
import cardEmulation from '@ohos.nfc.cardEmulation';
var isHceSupported = cardEmulation.isSupported(cardEmulation.FeatureType.HCE);
if (!isHceSupported) {
console.log('this device is not supported for HCE, ignore it.');
return;
}
var hasHceCap = cardEmulation.hasHceCapability();
if (!hasHceCap) {
console.log('this device hasHceCapability false, ignore it.');
return;
}
var elementName = {
"bundleName": "com.test.cardemulation",
"abilityName": "com.test.cardemulation.MainAbility",
};
var isDefaultService = cardEmulation.isDefaultService(elementName, cardEmulation.CardType.PAYMENT);
console.log('is the app is default service for this card type: ' + isDefaultService);