FiDel 2.2.0

FiDel 2.2.0

“FiDel”维护。



FiDel 2.2.0

  • 作者
  • FiDel

FIDEL iOS SDK

我们的 SDK 帮助您在几分钟内将卡片链接技术添加到您的 iOS 应用中。它安全地捕获借记/信用卡号并将它们与您的计划链接起来。

Demo GIF

安装

我们建议使用 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_testpk_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的默认语言是英语,但也已本地化为法语和瑞典语。当设备语言为加拿大法语瑞典语(瑞典)时,将显示适当的文本。请注意,开发错误消息仅以英语显示,并且不会显示给用户。

请确保您的项目也支持您希望支持的语言的本地化。

支持的卡方案

我们目前支持VisaAmericanExpress,但您可以选择只支持其中一种、两种或全部三种。您可以通过使用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闭包中。当用户取消卡片链接时,codeuser-canceled。错误信息是“用户取消了卡片链接”。

反馈

Fidel iOS SDK正在积极开发中,我们欢迎您提供反馈!

联系方式:GitHub Issues - 用于SDK问题

Fidel开发者论坛 - https://community.fidel.uk - 在集成的任何阶段提供个性化支持