Alooma-iOS 0.1.4

Alooma-iOS 0.1.4

测试已测试
语言语言 Objective-CObjective C
许可证 Apache 2
发布最后一次发布2019年2月

Rami Amar集成团队 维护。



Alooma-iOS - iOS 事件跟踪库

安装

使用 CocoaPods(https://cocoapods.org.cn)可以简单地集成 Alooma-iOS 库。

要集成 Alooma-iOS 库到您的项目中

  1. 在您的项目根目录下创建一个名为 Podfile 的文件
  2. 将以下行添加到您的 Podfile 中
pod "Alooma-iOS"
  1. 关闭 Xcode
  2. 打开终端,并在您的项目根目录中运行 pod install
  3. 打开新的 Xcode 工作空间(<your-project>.xcworkspace

兼容性

Alooma-iOS 库是 Mixpanel-iphone 库的一个修改版,简化到仅有事件跟踪的必需功能。

要集成 Alooma-iOS,您需要使用 Xcode 5 和 iOS 7.0 作为基础 SDK。该库将支持以上 iOS 6.0 的部署目标。

初始化

要使用 Alooma-iOS 库,您必须首先使用您的 Alooma 端点的服务器名和令牌来初始化它。由于这应该只进行一次,因此在您的应用完成启动时初始化 Alooma-iOS 是有意义的

#import <Alooma-iOS/Alooma.h>

@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    /* ... */

    [Alooma sharedInstanceWithToken:@"<your Alooma API token>" serverURL:@"<your Alooma endpoint>"];

    return YES;
}

初始化后,您可以在您的代码的任何地方通过调用 sharedInstance 方法来使用 Alooma-iOS 库

    Alooma *alooma = [Alooma sharedInstance];

发送事件

要向 Alooma 发送事件,您可以坚持 Mixpanel 的 track:properties: 惯例,或者您可以使用更自由的 trackCustomEvent: 来发送一个 JSON 序列化的 NSDictionary 对象。

Mixpanel 方法

正如我们提到的,Alooma-iOS 是从 Mixpanel 分支出来的,因此它支持 Mixpanel 库中实施的所有方法

  • track
  • track:properties
  • timeEvent
  • registerSuperProperties:registerSuperPropertiesOnce:
  • identify
  • flushreset

使用以下代码可以实现基本的事件跟踪

Alooma *alooma = [Alooma sharedInstance];

// Track an event just with a type
[alooma track:@"Event-type1"];

// Track an event with a type & properties
[alooma track:@"Event-type2" properties:@{
    @"prop1": @"abc",
    @"prop2": 123
}];

使用这些方法将发送以下格式的事件

{
    "event": "Event-type2",
    "properties": {
        "prop1": "abc",
        "prop2": 123,
        /* 
           additional properties added by the library:
           distinct_id, $os, time, sending_time, $model
           $manufacturer, $wifi, $screen_width, 
           $screen_height, ...
        */
    }
}

有关 Mixpanel 提供的其他函数的文档可以在Mixpanel 网站上找到。

自定义方式

如果您尚未使用 Mixpanel,只需发送自定义 JSON 对象,可以使用以下代码片段

Alooma *alooma = [Alooma sharedInstance];

[alooma trackCustomEvent:@{
    @"custom-field1": @"event-type",
    @"custom-field2": @"abc",
    @"custom-field3": 123
}];

使用此方法将发送以下格式的数据

{
    "custom-field1": "event-type",
    "custom-field2": "abc",
    "custom-field3": 123,
    "properties": {
        /* 
           additional properties added by the library:
           distinct_id, $os, time, sending_time, $model
           $manufacturer, $wifi, $screen_width, 
           $screen_height, ...
        */
    }
}

通用说明

  • Alooma-iOS 为每个事件添加了额外的属性

    • time - 记录事件的纪元时间(秒)
    • sending_time - 实际发送事件的纪元时间(秒),如果设备离线
    • distinct_id - 唯一标识符,用于标识设备
    • 更多字段及其值可以在函数 collectAutomaticProperties 中查看
  • Alooma-iOS 将事件存储在内部事件队列中,以便在设备在线时发送。队列大小固定为 500 个事件。如果设备离线且队列已满,第 501 个事件将导致队列中的第一个(最老的事件)被弹出并丢弃。

使用我们的 SampleApp 进行测试

要运行示例项目,请克隆仓库,并在 Example 目录下运行 pod install。打开 SampleApp.xcworkspace 并运行应用程序。

作者

Alooma, [email protected]

许可

Alooma-iOS 在 Apache v2 许可证下可用。有关更多信息,请参阅 LICENSE 文件。