是否可以使用 card.io 获取信用卡类型?
Posted
技术标签:
【中文标题】是否可以使用 card.io 获取信用卡类型?【英文标题】:Is it possible to get credit card type using card.io? 【发布时间】:2013-07-31 19:57:22 【问题描述】:我正在使用 card.io ios sdk 进行信用卡扫描。
是否可以使用card.io获取信用卡类型(即,是美国运通还是万事达或签证)?
我们可以使用 card.io 从信用卡中获得哪些其他可能的详细信息?
【问题讨论】:
【参考方案1】:试试这个:
CardIOCreditCardInfo *crediCard = [[CardIOCreditCardInfo alloc] init];
crediCard.cardNumber = @"CARD NUMBER";
imageView.image = [CardIOCreditCardInfo logoForCardType:[crediCard cardType]];
【讨论】:
很高兴看到卡片 io 库本身的卡片类型标志。【参考方案2】:来自 card.io 的 Josh 在这里。看看CardIOCreditCardInfo header。 cardType
是从 cardNumber
派生的,您可以从那里获得本地化的显示字符串和徽标。
通常,card.io 将其集成文档保持在最低限度,只是核心产品,但在标头中公开了额外的好处。
【讨论】:
【参考方案3】:我不知道@Punit 的回答是如何被接受的。用户希望 VISA 作为名称,我通过以下方式实现了这一点:
其中info
是从userDidProvideCreditCardInfo
接收的CardIOCreditCardInfo
的对象,这是CardIOPaymentViewControllerDelegate
的委托方法。
NSSTring *cardName = [CardIOCreditCardInfo displayStringForCardType:info.cardType usingLanguageOrLocale:@"en_US"];
因为它有公共方法而不是实例方法
/// Convenience method which returns a card type string suitable for display (e.g. "Visa", "American Express", "JCB", "MasterCard", or "Discover").
/// Where appropriate, this string will be translated into the language specified.
/// @param cardType The card type.
/// @param languageOrLocale See CardIOPaymentViewController.h for a detailed explanation of languageOrLocale.
/// @return Card type string suitable for display.
+ (NSString *)displayStringForCardType:(CardIOCreditCardType)cardType usingLanguageOrLocale:(NSString *)languageOrLocale;
【讨论】:
【参考方案4】:我没有使用card.io
的经验。
但是你的问题让我对这个 API 很好奇。
在 github 中,我找到了它,其中有一个文件:CardIOCreditCardInfo.h
// Derived from cardNumber.
// When provided by card.io, cardType will not be CardIOCreditCardTypeUnrecognized or CardIOCreditCardTypeAmbiguous.
@property(nonatomic, assign, readonly) CardIOCreditCardType cardType;
希望这会有所帮助。我正在努力学习这个,如果对您没有帮助,请告诉我。
【讨论】:
以上是关于是否可以使用 card.io 获取信用卡类型?的主要内容,如果未能解决你的问题,请参考以下文章