5Rocks 简介
5Rocks 成立于2013年6月,是韩国一家分析与营销自动化公司,其在数据科学、深度报告、预测性分析及客户关系管理服务等方面有独到优势。
开篇
本文介绍如何使用5Rocks iOS SDK 接入 5Rocks的服务。
1. 注册登陆
首先我们需要一个5Rocks账号。去这里,点击右上角的 Sign up 按钮, 在弹出的页面中输入您的邮箱, 之后您的邮箱中应该就能收到一封来自5Rocks的注册邮件。点击邮件中的Confirm your email 链接,如下图:
之后会进入5Rocks真正的注册界面, 填写一些相关信息,注意其中 Referral Code 那一项不用填, 最后点击 Start . 完成后就会跳转到下面的页面:
这里我们选择第一个:
Currently own live game/app, and wants to integrate with 5Rocks
在接下来的页面中填入你的 app name, 支持的orientation, app icon, 时区,以及你app内购买会使用到的货币种类,这里我们选择如下的设置:
点击下一步,再接下来的页面中选择 I will integrate SDK , 记录下下面的 App ID, APP Key, App Secret, 这些我们在集成SDK的时候会用到。同样在这个页面我们可以下载各个版本的SDK,这里我们下载iOS的SDK, 之后直接点击 Next. 接下来这个页面不用管它,直接点击 Done, 好了,我们终于进入了 5Rocks 的UI 界面了。接下来我们就可以暂时离开这个页面,去我们的iOS 项目中做集成了。
2. SDK集成
下面我们新建一个iOS项目 MyTestApp, 之后解压刚才下载好的 5Rocks SDK, 会得到一个目录 5rocks-ios-sdk, 把这个目录直接添加到我们创建好的iOS 项目中,这部做完后我们的项目目录结构应该如下图所示:
接下来我们需要做一下必要的项目设置,首先在 Build Phases -> Link Binary With Library 里添加Security.framework。libFiveRocks.a文件应该在上一步就已经自动添加好了,完成之后,项目设置应该如下图所示:
接下来选择Build Settings 选项卡,找到 Other Linker Flags 这项设置项, 你可能需要在左上角选择 All 才能看到这个设置项,如下图所示:
双击 Other Linker Flags 设置项,在弹出的窗口中新加一个值 : "-lstdc++", 完成之后应该如下图所示:
这样我们的项目设置就完成了。
在项目中新建一个 Header File, 将它命名为 “5rocksConstants.h", 里面import 5Rocks header 文件,并且定义两个宏,用来存储 App Id, 以及 App Key (填入你刚才在 5Rocks UI中得到的相应值), 如下所示:
然后编辑 AppDelegate.m 文件,import 5rocksConstants.h , 并且在 application: didFinishLaunchingWithOptions: 函数中添加如下代码:
在 applicationWillResignActive: 函数中调用 [FiveRocks endSession];
在 applicationDidEnterBackground: 函数中调用 [FiveRocks endSession];
在 applicationWillEnterForeground: 函数中调用 [FiveRocks startSession:FIVEROCKS_APP_ID withAppKey:FIVEROCKS_APP_KEY];
在 applicationDidBecomeActive: 函数中调用 [FiveRocks startSession:FIVEROCKS_APP_ID withAppKey:FIVEROCKS_APP_KEY];
最后在 applicationWillTerminate: 函数中调用 [FiveRocksendSession];
这样基本的初始化就完成了。
接下来就是一些事件发生后给5Rocks通知的API,比如在你的app中用户完成了一次应用内购买,这个时候你就可以调用一个5Rocks的API 来追踪这件事,这里我们用一个button的click事件来模拟一次应用内购买,添加的代码(在你的ViewController.m中)如下:
这里的 "RUBY_SINGLE_PACK" 可以是任意的字符串,用来表示这一次购买,currencyCode 应该是这次购买使用的货币类型,这里我们用了 USD, price中就是这次的价格, campaignId 可以是nil, 如果你在 5Rocks 的 UI 中创建过 campaign,并且这里想要和这个campaign 关联,那么可以填入那个campaign id.
如果你的app有一些类似的社交功能,那么可以用下面的代码发送一些用户数据给 5Rocks 做统计:
这里我们传人了当前用户的Id (DemoUser), 他当前的level (1级), 以及当前user有几个Friend (3个)
好了,到这里基本的5Rocks 集成就完成了,接下运行几次你的app,看看效果吧。运行几次后,你应该就会收到 5Rocks 的邮件,邀请你去UI中看看统计数据,等一段时间,你就应该能看到一些数据了。 以下是我的测试应用的以下数据展示:
还有更多的API,可以参考5Rocks SDK中的文档。基本上就是发生了一些事件,然后调用5Rocks 的API, 向他们发送相应的数据,5Rocks 有了这些数据,就能够做一些统计信息了。
关于Android 的SDK接入其实是大同小异的,相信有了iOS SDK接入的经验,聪明的你一定能够轻松搞定Android 的接入了。可以参考这个文档。