概览
Connect iOS SDK 允许您将我们的 Finicity Connect 应用程序嵌入到您自己的移动应用程序的任何地方。
iOS SDK 以编译二进制的形式发布,格式为 XCFramework,这使您能够轻松地将我们的 SDK 集成到您的开发项目中。我们的 iOS SDK 支持完整的位码支持,因此在集成我们的 SDK 时,您不需要在应用程序中禁用位码。
XCFramework 格式是苹果官方支持的格式,用于在单个包中分发多个平台和架构的二进制库。
Connect iOS SDK 的其他文档可以在 docs.finicity.com/connect-ios-sdk 上找到。
要求
Connect iOS SDK 支持 iOS 11 或更高版本。
安装
Connect iOS SDK 可以使用 CocoaPods 或通过手动将 Connect.xcframework 拖放到您的 Xcode 项目中来进行安装。
CocoaPods
Connect iOS SDK 可以作为一个 CocoaPod 来安装。要安装,请在 Podfile 中包含以下内容。
use_frameworks!
pod 'FinicityConnect'
手动
- 在 Xcode 中打开您的项目,将 Connect.xcframework 文件夹拖到项目中。
- 在您的目标构建设置中,选择“通用”选项卡,滚动到“框架、库和嵌入式内容”,选择 Connect.xcframework。在“嵌入”列中,如果尚未选择,从下拉菜单中选择“嵌入并签名”。
集成
- 在所有调用 Connect iOS SDK 的源文件中导入 Connect。
import UIKit
import Connect
-
创建加载、完成、取消、错误、路由和用户事件的回调函数。
这些回调对应于 Connect 数据流中的以下事件事件 描述 loaded 当 Connect 网页加载并准备好显示时调用。 done 当用户成功地完成 Connect 应用程序时调用。它还具有一个未标记的 NSDictionary? 参数,包含事件信息。 cancel 当用户取消 Connect 应用程序时调用。 error 当用户在使用 Connect 应用程序时发生错误时调用。未标记的 NSDictionary? 参数包含事件信息。 route 当用户正在导航 Connect 应用程序的屏幕时调用。未标记的 NSDictionary? 参数包含事件信息。 user Connect 2.0(仅限)当用户执行操作时调用。用户事件提供了对用户在 Connect 应用程序中可能采取的操作的可见性。未标记的 NSDictionary? 参数包含事件信息。 注意:完成、错误、路由和用户回调函数将有一个 NSDictionary? 参数,包含事件的数据。
-
使用有效的 Connect URL 和回调函数,创建一个 ConnectViewConfig 对象。请参阅 生成 2.0 Connect URL API
-
创建 ConnectViewController 类的实例,在调用其 load 方法时提供 ConnectViewConfig 类。
-
在加载回调中,使用 UINavigationController 并以 ConnectViewController 作为其 rootViewController 显示 ConnectViewController。
-
当 Connect 流完成、用户提前取消或遇到错误时,ConnectViewController 会自动消失。
示例
func openConnect(url: String) {
let config = ConnectViewConfig(connectUrl: url, loaded: self.connectLoaded, done: self.connectDone, cancel: self.connectCancelled, error: self.connectError, route: self.connectRoute, userEvent: self.connectUserEvent)
self.connectViewController = ConnectViewController()
self.connectViewController.load(config: config)
}
func connectLoaded() {
self.connectNavController = UINavigationController(rootViewController: self.connectViewController)
self.connectNavController.modalPresentationStyle = .automatic
self.present(self.connectNavController, animated: false)
}
func connectDone(_ data: NSDictionary?) {
// Connect flow completed
}
func connectCancelled() {
// Connect flow exited prematurely
}
func connectError(_ data: NSDictionary?) {
// Error encountered in Connect flow
}
func connectRoute(_data: NSDictionary?) {
// Connect route changed
}
func connectUserEvent(_ data: NSDictionary?) {
// Connect user event fired in response to user action
}
ConnectWrapper Swift 示例应用程序
此存储库包含一个由 Swift 编写的示例应用程序 ConnectWrapper(需要 Xcode 11 或更高版本),用于展示 Connect iOS SDK 的集成和使用。