在Android HCE(Host Card Emulation)卡仿真过程中,如果未调用processCommandApdu()方法,可能是由于以下几个原因造成的:
public class MyHostApduService extends HostApduService {
@Override
public byte[] processCommandApdu(byte[] commandApdu, Bundle extras) {
// 在这里处理APDU指令
return null;
}
@Override
public void onDeactivated(int reason) {
// 卡片被禁用时的处理逻辑
}
}
确保在aid-filter标签中正确填写了你要处理的AID。
如果以上方法仍然无法解决问题,可以尝试在processCommandApdu()方法中打印日志,以确认是否有APDU指令到达,并检查是否有其他错误导致未调用processCommandApdu()方法。