我正在积分卡。IO在我的应用程序读取借记卡/信用卡信息。我已经成功地整合了它,但它总是得到卡号,但没有到期,CVV和显示。它有时得到到期日期,但它从来没有得到持卡人的姓名和cvv。此外,如果我想改变主题,我的意思是文本字段和按钮背景是那些可能的库类不可编辑。下面是我用来表示意图的代码,即
private void readCardInfo() {
Intent scanIntent = new Intent(getActivity(), CardIOActivity.class);
scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_EXPIRY, true);
scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_CVV, true);
scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_CARDHOLDER_NAME, true);
startActivityForResult(scanIntent, MY_SCAN_REQUEST_CODE);
}
和下面是我用来获取onActivityResult()上的数据的代码;
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == MY_SCAN_REQUEST_CODE ){
if (data != null && data.hasExtra(CardIOActivity.EXTRA_SCAN_RESULT)) {
CreditCard scanResult = data.getParcelableExtra(CardIOActivity.EXTRA_SCAN_RESULT);
cardNumber = scanResult.getFormattedCardNumber();
if (scanResult.isExpiryValid()) {
expiryDate = scanResult.expiryMonth + "/" + scanResult.expiryYear;
LogHelper.debugLog("expiry date is " + expiryDate);
setExpiryDate(expiryDate);
}
if (scanResult.cvv != null) {
codeCVV = scanResult.cvv;
tvCVV.setText(codeCVV);
}
if (scanResult.cardholderName != null) {
cardHolderName = scanResult.cardholderName;
etNameOnCard.setText(cardHolderName);
}
setCardNumber(cardNumber);
}
}
}
我做错了什么或错过任何步骤?
抱歉回复晚了,但如果有人遇到同样的问题,那么它将有所帮助
EXTRA_KEEP_APPLICATION_THEMEEXTRA_KEEP_APPLICATION_THEME布尔多。可选的。如果此值设置为true,并且应用程序有主题,则为卡片的主题。io activity将被设置为应用程序的主题。
在intent extra中传递EXTRA_KEEP_APPLICATION_THEME常量,并设置布尔值为true