Hoko 2.5.0

Hoko 2.5.0

测试已测试
语言语言 Obj-CObjective C
许可证 自定义
发布最后发布2016年11月

Ivan BruelHugoRicardo维护。



Hoko 2.5.0

  • Hoko S.A.、Hugo Sequeira、Ivan Bruel、Ricardo Otero和Pedro Vieira创作

快速入门 - HOKO iOS框架

本文档是关于iOS上的HOKO框架(仅限于iOS 5及以上版本)的快速入门介绍。您可以在http://hokolinks.com/documentation#ios阅读完整文档。

要将HOKO集成到您的应用程序中,只需在公司文档中添加后,遵循以下3个简单步骤。

在您的项目中安装HOKO

框架

  1. 下载Hoko SDK
  2. Hoko文件夹拖放到您的项目中。
  3. 确保还应将SystemConfiguration.frameworklibz.dylib添加到您的项目中,即使它们已经存在也在所不惜。

将SDK与您的Swift项目集成

由于HOKO SDK是用Objective-C编写的,因此您必须手动将一个桥接头文件添加到您的项目中,以便与您的Swift代码一起使用。

  • 文件 > 新建 > 文件... > iOS > > 头文件

  • 将头文件命名为YourAppName-Bridging-Header.h

  • 在该头文件内部,导入#import <Hoko/Hoko.h>

  • 转到您的项目 > 构建设置 > Objective-C桥接头文件 > 添加到您的桥接头文件的路径,从您的根目录开始(例如,MyApp/MyApp-Bridging-Header.h

  • 使用Swifty!

SDK设置

将以下行添加到您的AppDelegate类中的applicationDidFinishLaunching方法中(如果您使用的是Objective-C,不要忘记通过使用#import <Hoko/Hoko.h>导入HOKO类)。

Objective-C

#import <Hoko/Hoko.h>

- (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    [Hoko setupWithToken:@"YOUR-APP-TOKEN"];
    // The rest of your code goes here...
}

Swift

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    Hoko.setupWithToken("YOUR-APP-TOKEN")
    // The rest of your code goes here...
}

1. 在您的App中添加URL Scheme

要注册URL方案,您应该导航到项目中的应用程序target,选择info标签页,并在URL Types下点击加号。一旦进入,您应该分配一个自定义的(且唯一的)URL方案。根据Apple的指南,它应该是反向DNS表示法(例如com.hoko.hokotestbed)。

URL Scheme

2. 深度链接

要将路由映射到视图控制器,您只需在AppDelegate类的applicationDidFinishLaunching方法中的deeplinking模块中进行映射即可。

Objective-C

[[Hoko deeplinking] mapRoute:@"product/:product_id" toTarget:^(HOKDeeplink *deeplink) {
    BLKProductViewController *productViewController = [[BLKProductViewController alloc] initWithProductId:deeplink.routeParameters[@"product_id"]];
    productViewController.referrer = deeplink.queryParameters[@"referrer"];
    [HOKNavigation pushViewController:productViewController animated:YES];
}];

Swift

Hoko.deeplinking().mapRoute("product/:product_id", toTarget: { (deeplink: HKDeeplink!) -> Void in
    let productViewController = BLKPRoductViewController(productId: deeplink.routeParameters["product_id"])
    productViewController.referrer = deeplink.queryParameters["referrer"]
    HOKNavigation.pushViewController(productViewController, animated: true)
})

为了在深度链接进入应用程序时执行某些任务,可以在Deeplinking模块中添加一个Handler。这使得跟踪深度链接到分析平台、记录条目或更新数据库变得更加容易。

Objective-C

[[Hoko deeplinking] addHandlerBlock:^(HOKDeeplink *deeplink) {
    [[Analytics sharedInstance] track:"deeplink" parameters:@{@"route": deeplink.route}];
}];

Swift

Hoko.deeplinking().addHandlerBlock { (deeplink: HOKDeeplink!) -> Void in
    Analytics.sharedInstance().track("deeplink", parameters: ["route": deeplink.route])
}

完整文档

我们建议您阅读完整的文档:http://support.hokolinks.com/quickstart/ios/