FIDEL iOS SDK
我们的 SDK 帮助您在几分钟内将卡片链接技术添加到您的 iOS 应用中。它安全地捕获借记/信用卡号并将它们与您的计划链接起来。
安装
我们建议使用 CocoaPods 将 Fidel SDK 与您的项目集成。
通过运行以下命令添加 Podfile
(如果您还没有):pod init
。
第 1 步
添加 FiDelPod(对于 Swift 5.2+、XCode 11.4+)
pod 'Fidel'
或者如果您仍在使用 Xcode 11.2,与 Swift 5.1 一同使用
pod 'Fidel', '~>1.6.2'
或者如果您使用 Xcode 10.3,与 Swift 5 一同使用
pod 'Fidel', '~>1.5.1'
或者如果您使用 Swift 4.2.1
pod 'Fidel', '~>1.4.4'
或者如果您使用 Swift 4.1
pod 'Fidel', '~>1.3.7'
或者如果您使用 Swift 4.0.2
pod 'Fidel', '~>1.2.8'
或者在您使用 Swift 3.0 的情况下,请使用 1.1.8
标签
pod 'Fidel', '~>1.1.8'
第 2 步
为了允许使用相机扫描卡片,请确保在您的应用的 Info.plist
文件中添加密钥 NSCameraUsageDescription
,并将其值设置为字符串,说明为何您的应用需要使用相机(例如,“扫描信用卡”)。当应用首次请求访问相机权限时,将显示此字符串。
第3步(如果您的项目是Swift,请跳过)
如果您有一个Objective-C项目并且尚未添加任何Swift代码,请将“始终嵌入Swift标准库”标志在编译设置中设置为“YES”。有关此设置的更多详细信息,请参阅这篇 Apple 文档。
故障排除
如果CocoaPods找不到Fidel规范或找到旧规范,请尝试使用 pod update
进行更新。更新后,运行 pod install
。
使用方法
在您的代码中导入SDK
Swift
import Fidel
Objective-C
#import <Fidel/Fidel-Swift.h>
设置您的公共SDK Key(pk_test
或 pk_live
),以及您想要链接卡片的 programId
Swift
Fidel.apiKey = "pk_test_7ty6i7..."
Fidel.programId = "3a7a169a-..."
Objective-C
[FLFidel setApiKey:@"pk_test_7ty6i7..."];
[FLFidel setProgramId:@"3a7a169a-..."];
自动启动卡片扫描
Swift
Fidel.autoScan = true
Objective-C
[FLFidel setAutoScan:YES];
使用自定义横幅自定义视图
Swift
Fidel.bannerImage = UIImage(named: "some_image_asset.png")
Objective-C
[FLFidel setBannerImage:[UIImage imageNamed:@"myImage"]];
如果您不设置横幅图像,我们将完全删除顶部横幅空间,并保留卡片链接UI在顶部。
然后,显示 Fidel 视图控制器
Swift
Fidel.present(presentingViewControllerInstance)
Objective-C
[FLFidel present:self onCardLinkedCallback:nil onCardLinkFailedCallback:nil];
如果需要,您可以传递回调以通知卡片是否已链接
Swift
Fidel.present(self, onCardLinkedCallback: { (linkResult: LinkResult) in
print(linkResult.id)
}, onCardLinkFailedCallback: { (err: LinkError) in
print(err.message)
})
Objective-C
[FLFidel present:self onCardLinkedCallback:^(FLLinkResult * _Nonnull result) {
NSLog(@"%@", result);
} onCardLinkFailedCallback:^(FLLinkError * _Nonnull error) {
NSLog(@"%@", error);
}];
自定义复选框同意文本
若要自定义复选框同意文本,请使用以下API
Fidel.companyName = "Your Company Name Inc." //(Maximum 60 characters);
Fidel.privacyURL = "https://yourcompany.com/privacyURL" //(must be a valid URL)
Fidel.deleteInstructions = "Your delete instructions" //(Maximum 60 characters);
companyName
的默认值是 "公司名称"
。 deleteInstructions
的默认值是 "前往您的账户设置"
。
美国和加拿大同意文本
如果将美国或加拿大添加到 Fidel.allowedCountries
数组中,或者您没有设置此属性的值(默认情况下,美国和加拿大将与其他允许的国家一起供用户选择)
当用户选择美国或加拿大时,将应用不同的同意文本。除了上述参数外,您还可以为同意文本设置以下参数
Fidel.programName = "your program name"; // (Maximum 60 characters);
Fidel.termsConditionsURL = "https://yourcompany.com/termsConditions"; // (cannot be nil, in this situation, and be a valid URL)
programName
的默认替换值为 "我们的"
(英文;其他语言将根据需要调整)。
在这种情况下,termsConditionsURL
是强制性的。
如果您没有设置隐私政策URL(与条款和条件URL不同),则不会显示相应的文字。
以下为 Cashback Inc(示例公司名称)的示例条款和条件文本,适用于美国和加拿大
通过提交您的卡信息并勾选此框,您授权Visa监控并向我们的服务提供商Fidel共享交易数据以参与该计划。您还承认并同意,Fidel可能将您的符合资格的交易的一些细节与Cashback Inc共享,以使您能够参与该计划,并按照Cashback Inc的条款和条件、Cashback Inc的隐私政策和Fidel的隐私政策进行其他目的。您可以通过联系客服在任何时候撤回对链接卡的交易监控。
适用于其他国家/地区
我授权Visa监控我的支付卡以识别可获奖励的交易,并授权Visa将与Cashback Inc共享此类信息,以便启用与我相关的卡关联优惠和目标优惠。有关Cashback Inc隐私习惯的信息,请参阅隐私政策。您可以在任何时候通过联系客服撤回对输入支付卡的交易监控。
本地化
SDK的默认语言是英语,但也已本地化为法语和瑞典语。当设备语言为加拿大法语
或瑞典语(瑞典
)时,将显示适当的文本。请注意,开发错误消息仅以英语显示,并且不会显示给用户。
请确保您的项目也支持您希望支持的语言的本地化。
支持的卡方案
我们目前支持Visa、和AmericanExpress,但您可以选择只支持其中一种、两种或全部三种。您可以通过使用supportedCardSchemes
来实现。请注意,该集合的值不能是空集合。
请参考以下示例
Swift
Fidel.supportedCardSchemes = [.visa, .mastercard, .americanExpress] //you can also add .amex
Objective-C
NSSet *supportedCardSchemes = [[NSSet alloc] initWithObjects:
@(FLCardSchemeVisa),
@(FLCardSchemeMastercard),
@(FLCardSchemeAmericanExpress),
nil];
FLFidel.objc_supportedCardSchemes = supportedCardSchemes;
允许的国家
使用以下属性来设置允许的国家
Fidel.allowedCountries = [.unitedKingdom, .ireland]
在Objective-C中,它看起来如下
FLFidel.objc_allowedCountries = @[@(FLCountryIreland), @(FLCountryUnitedKingdom)];
允许的国家有:.canada
、.ireland
、.japan
、.sweden
、.unitedArabEmirates
、.unitedKingdom
、.unitedStates
。默认情况下,allowedCountries
数组包含Fidel允许的所有国家。
当你将数组中设置一个国家时,卡片链接屏幕将不会显示国家选择UI。它将使用设置的国家进行卡片链接。
当数组中设置多个国家时,UI将选择第一个作为默认国家,但用户可以在你设置的值之间进行选择。
默认选中国家
Fidel.defaultSelectedCountry = .unitedKingdom
或者,如果你使用Objective-C
FLFidel.defaultSelectedCountry = FLCountryUnitedKingdom;
使用此参数来设置在打开卡片注册屏幕时将默认选中的国家。
默认值是.unitedKingdom
。
文档
在测试环境中,请使用我们的VISA、Mastercard或American Express测试卡号
VISA: 4444000000004***(最后3位数可以是任何数字)
Mastercard: 5555000000005***(最后3位数可以是任何数字)
American Express: 3400000000003**或3700000000003**(最后2位数可以是任何数字)
检测用户取消卡片链接
检查你收到的错误对象的code
属性,在onCardLinkFailedCallback
闭包中。当用户取消卡片链接时,code
是user-canceled
。错误信息是“用户取消了卡片链接”。
反馈
Fidel iOS SDK正在积极开发中,我们欢迎您提供反馈!
联系方式:GitHub Issues - 用于SDK问题
Fidel开发者论坛 - https://community.fidel.uk - 在集成的任何阶段提供个性化支持