我在我的应用中使用card.io扫描信用卡。我的问题是我无法获得卡片图像徽标(即使我通过(CardIOActivity.EXTRA_USE_CARDIO_LOGO,true))。我也没有钥匙卡(例如.VISA有4个,MASTERCARD有55个或51个)。
答案将不胜感激。
提前致谢。
我对Key的意思是CardTypeId。 我们在这样的ios中得到CardTypeId ..
(void)userDidProvideCreditCardInfo:(CardIOCreditCardInfo *)info inPaymentViewController:(CardIOPaymentViewController *)scanViewController {
// The full card number is available as info.cardNumber, but don't log that!
NSLog(@"Received card info. Number: %@, expiry: %02i/%i, cvv: %@.cardtype %u", info.cardNumber, info.expiryMonth, info.expiryYear, info.cvv,info.cardType);
//getting cardtype (like visa) from info.cardType (this is what we called as CardTypeId //an ineger value)
NSString *cardTypeString=[NSString stringWithFormat:@"%@",[CardIOCreditCardInfo displayStringForCardType:info.cardType usingLanguageOrLocale:[[NSLocale currentLocale] localeIdentifier]]];
}
所以如何在android中获取整数(info.cardType) (info是CardIOCreditCardInfo的对象) FYI info.cardType返回整数,如53,52等。
答案 0 :(得分:5)
Jeff来自card.io。
我们现在允许在card.io Android SDK版本3.1.3中检索卡片类型图像。要检索卡片类型图像,请使用
cardType.imageBitmap(context)
CardIOActivity.EXTRA_USE_CARDIO_LOGO用于在扫描卡片时显示card.io徽标,与检索图像徽标无关。
关于cardTypeId,我假设你想要cardType枚举和字符串。在Android中,CreditCard.getCardType()返回CardType枚举,例如CardType.VISA或CardType.AMEX。如果您想要检索到的信用卡的本地化名称,请致电
cardType.getDisplayName(null) //optionally pass in the desired locale
枚举值不应该是重要的,因为枚举应该作为枚举使用。它们永远不应该是未定义的值(iOS header file不会显示52或53作为可能的值)。如果您认为存在错误,请在card.io GitHub Android repo。
中输入答案 1 :(得分:1)
在方法中添加此行 【onActivityResult】
resultStr += "Card Type: " + scanResult.getCardType().getDisplayName(null) + "\n";