Wildlink API for iOS
功能
此仓库允许您将以下 Wildlink 功能集成到您的 Swift iOS 应用中。
- 创建虚荣链接
- 查询虚荣链接点击统计
- 查询您的个人佣金信息
- 查询我们的商家数据库
- 按名称或 ID 搜索特定商家
要求
- iOS 10.0+
- Xcode 10.2+
安装
CocoaPods
您可以使用CocoaPods通过将其添加到您的Podfile
中来安装Wildlink
。
use_frameworks!
platform:ios, '10.0'
target 'Wildlink_Example' do
pod 'Wildlink', '~> 1.0.6'
end
添加cocoapod后,运行pod install
来设置您的项目并在Xcode中打开您的.xcworkspace。
手动操作
- 下载并将
Wildlink/Classes/*.swift
拖放到您的项目中。 - 恭喜恭喜!
使用示例
初始化SDK
在您的应用程序中(我们建议在您的AppDelegate的didFinishLaunchingWithOptions函数中)您需要调用SDK上的initialize方法,并将自己设置为Wildlink代理
Wildlink.shared.delegate = self
Wildlink.shared.initialize(appId: "<yourAppID>", appSecret: "<yourAppSecret", wildlinkDeviceToken: "<existingUserToken>", wildlinkDeviceKey: "<existingUserKey>")
回调说明
为了防止阻塞主UI线程,Wildlink使用内部处理队列来处理服务器响应。完成处理程序可以在任何线程上调用,因此如果您使用回调的内容更新UI元素,请确保在主线程中包装UI调用。
DispatchQueue.main.async {
self.urlOutlet.text = url.absoluteString
}
完整的AppDelegate实现示例
import UIKit
import Wildlink
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
//initialize wildlink
Wildlink.shared.delegate = self
let defaults = UserDefaults.standard
Wildlink.shared.initialize(appId: "<yourAppID>", appSecret: "<yourAppSecret", wildlinkDeviceToken: defaults.string(forKey: "wildlinkDeviceToken"), wildlinkDeviceKey: defaults.string(forKey: "wildlinkDeviceKey"))
return true
}
...
}
extension AppDelegate : WildlinkDelegate {
func didReceive(deviceKey: String) {
let defaults = UserDefaults.standard
defaults.set(deviceKey, forKey: "wildlinkDeviceKey")
}
func didReceive(deviceToken: String) {
let defaults = UserDefaults.standard
defaults.set(deviceToken, forKey: "wildlinkDeviceToken")
}
func didReceive(deviceId: UInt64) {
let defaults = UserDefaults.standard
defaults.set(deviceId, forKey: "wildlinkDeviceId")
}
}
在上面的示例中,您会注意到我们在遵循WildlinkDelegate协议的过程中,正在使用NSUserDefaults来存储和检索Wildlink返回的设备令牌和密钥。其他由Wildlink SDK发起的请求将通过以下所示的方式处理完成处理程序。
从SDK请求事项
一旦初始化SDK以识别您的应用程序并注册其运行的设备,您就可以开始进行请求。
请求个性化网址
import Wildlink
Wildlink.shared.createVanityURL(from: urlOutlet.text) { (url, error) in
// do something interesting with the result
}
请求您的点击统计
import Wildlink
//get the hourly results of your clicks for the last week
Wildlink.shared.getClickStats(from: Date(timeIntervalSinceNow: -604800), with: .hour, completion: { (results, error) in
// do something interesting with the result
})
请求您的佣金统计
import Wildlink
Wildlink.shared.getCommissionSummary({ (stats, error) in
// do something interesting with the result
})
获取特定商家的详细信息
import Wildlink
Wildlink.shared.getMerchantByID("5476062", { (merchant, error) in
// do something interesting with the result
})
搜索我们的商家列表
import Wildlink
//this example lists *all* of our merchants
Wildlink.shared.searchMerchants(ids: [], names: [], q: nil, disabled: nil, featured: true, sortBy: nil, sortOrder: nil, limit: nil, { (merchants, error) in
// do something interesting with the result
})
贡献
我们非常希望您为 Wildlink 做出贡献,请查阅 LICENSE
文件获取更多信息。
元数据
版权所有 2019 Wildfire Systems, Inc.
基于 MIT 许可证分发。更多信息请见 LICENSE
。