Tealium-Compact 4.1.11

Tealium-Compact 4.1.11

测试已测试
Lang语言 Obj-CObjective C
许可证 自定义
发布最新发布2015 年 10 月

David Cordero 维护。



Tealium iOS 库 - 4.1.11 & 4.1.11c


从早期版本升级?请参阅 升级通知


概述

包含的框架允许在应用程序中一次性自动标签,然后通过 Tealium IQ远程配置第三方分析服务;无需重新编码和重新部署应用程序以更新这些服务。

首次实施的用户应阅读 Tealium 的工作原理 页面,了解 Tealium SDK 与传统分析 SDK 的区别。有关更多信息,请访问 wiki 主页

本文件的其余部分提供了实施相对内存消耗较少的 Compact 库的快速安装说明。

目录

要求

快速入门

本指南假设您已经使用 Xcode 创建了一个 iOS 应用程序。以下是添加 Tealium 的 Compact 库 到其中的步骤。有关哪个版本最适合您的讨论,请参阅 下一步 部分。

1. 克隆/复制库

通过单击主仓库页面上的 克隆到桌面下载 ZIP 按钮。

2. 添加到项目

2a. 从 ios-library/TealiumCompact 文件夹中,将 TealiumLibrary.framework(/tealiumcompact/tealiumlibrary.framework) 拖放到 Xcode 项目的导航窗口中。

2b. 点击对话框中的 "完成"。

3. 链接框架

将以下 Apple 框架链接到您的项目中

  • SystemConfiguration
  • CoreTelephony (可选)

您的项目-目标-常规选项卡现在应该看起来像这样

4. 添加连接器标志

将 "-ObjC" 连接器标志添加到项目的目标-构建设置中

5o. 导入和初始化 Objective-C

5o1. 将库导入到您的项目 .pch 文件中的以下块中

#ifdef __OBJC__
    //...

    #import <TealiumLibrary/Tealium.h>
#endif

5o2. 在您的 appDelegate.m 类中初始化库

- (void)applicationDidFinishLaunching:(UIApplication *)application
{
    //...

    [Tealium initSharedInstance:@"tealiummobile" profile:@"demo" target:@"dev"];

    // (!) Don't forget to replace "tealiummobile", "demo" and "dev" with your own account-profile-target settings before creating your production build.

}

5s. 导入和初始化 Swift

5s1. 导入 Tealium-bridging-header.h

5s2. 更新项目的构建设置:Swift 编译器 - 编码生成

  • 安装 Objective-C 头文件:是
  • Objective-C 桥接头文件:(桥接头文件的路径)

5s3. 添加初始化语句

Tealium.initSharedInstance("tealiummobile", profile: "demo", target: "dev", options:TealiumOptions.TLNone, globalCustomData: nil)

6. 编译和运行

现在,您的应用程序已经准备就绪,可以编译和运行。在控制台输出中,您应该看到类似以下的内容

2015-05-28 10:06:21.078 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Init settings: {
    AccountInfo =     {
        Account = tealiummobile;
        Profile = demo;
        Target = dev;
    };
    Settings =     {
        AdditionalCustomData =         {
        };
        ExcludeClasses =         (
        );
        LogVerbosity = 1;
        UseExceptionTracking = 1;
        UseHTTPS = 1;
    };
}
2015-05-28 10:06:21.083 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Initializing...
2015-05-28 10:06:22.294 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Adding new command: _push
2015-05-28 10:06:22.294 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Adding new command: _http
2015-05-28 10:06:22.305 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: App Launch detected.
2015-05-28 10:06:22.360 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Queued auto link dispatch for TealiumLifecycle : launch : 2015-05-28T10:06:22. 1 dispatch queued.
2015-05-28 10:06:22.469 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Network is available.
2015-05-28 10:06:22.624 UICatalog_TealiumCompactLibrary[1208:1724372] TEALIUM 4.1.8c: Connection established with mobile.html at https://tags.tiqcdn.com/utag/tealiummobile/demo/dev/mobile.html?platform=iOS&os_version=8.3&library_version=4.1.8c&timestamp_unix=1432832782.
2015-05-28 10:06:23.938 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: UTAG found in mobile.html: true
2015-05-28 10:06:23.939 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Initialized.
2015-05-28 10:06:24.028 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: UIAutotracking:             ON (ignoring)
2015-05-28 10:06:24.029 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: IVar Tracking:              ON (ignoring)
2015-05-28 10:06:24.029 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Batch limit:                1
2015-05-28 10:06:24.029 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Wifi sending only:          OFF
2015-05-28 10:06:24.030 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Battery save feature:       ON
2015-05-28 10:06:24.030 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Offline dispatch cache:     -1
2015-05-28 10:06:24.030 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Queued dispatch expiration: -1
2015-05-28 10:06:24.031 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Mobile Companion:           ON (ignoring)
2015-05-28 10:06:24.031 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Sending 1 queued dispatch.
2015-05-28 10:06:24.075 UICatalog_TealiumCompactLibrary[1208:1724453] TEALIUM 4.1.8c: Successfully packaged auto link dispatch for TealiumLifecycle : launch : 2015-05-28T10:06:22
2015-05-28 10:06:24.339 UICatalog_TealiumCompactLibrary[1208:1724479] TEALIUM 4.1.8c: Finished running dispatch queue with 0 remaining dispatches.
2015-05-28 10:06:24.626 UICatalog_TealiumCompactLibrary[1208:1724482] TEALIUM 4.1.8c: Registering device for remote push notifications...

恭喜!您已成功将 Tealium Compact 库集成到您的项目中。

如果您禁用了互联网连接以测试离线缓存,您将看到类似以下的内容

2015-05-28 10:08:12.519 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Init settings: {
    AccountInfo =     {
        Account = tealiummobile;
        Profile = demo;
        Target = dev;
    };
    Settings =     {
        AdditionalCustomData =         {
        };
        ExcludeClasses =         (
        );
        LogVerbosity = 1;
        UseExceptionTracking = 1;
        UseHTTPS = 1;
    };
}
2015-05-28 10:08:12.522 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Initializing...
2015-05-28 10:08:12.785 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Adding new command: _push
2015-05-28 10:08:12.785 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Adding new command: _http
2015-05-28 10:08:12.794 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Network is not available.
2015-05-28 10:08:12.795 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: App Launch detected.
2015-05-28 10:08:12.851 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Queued auto link dispatch for TealiumLifecycle : launch : 2015-05-28T10:08:12. 1 dispatch queued.
2015-05-28 10:08:12.885 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: NO INTERNET connection detected.
2015-05-28 10:08:12.885 UICatalog_TealiumCompactLibrary[1214:1725071] TEALIUM 4.1.8c: Trying to reconnect (attempt 1 of 3)...
2015-05-28 10:08:13.959 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: NO INTERNET connection detected.
2015-05-28 10:08:13.960 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Trying to reconnect (attempt 2 of 3)...
2015-05-28 10:08:14.975 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: NO INTERNET connection detected.
2015-05-28 10:08:14.976 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Trying to reconnect (attempt 3 of 3)...
2015-05-28 10:08:15.991 UICatalog_TealiumCompactLibrary[1214:1725067] TEALIUM 4.1.8c: NO INTERNET connection detected.
2015-05-28 10:08:15.992 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Saved configuration loaded: true
2015-05-28 10:08:15.992 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: No new configuration data found from mobile.html. Library will continue running with last saved configuration.
2015-05-28 10:08:15.993 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: UIAutotracking:             ON (ignoring)
2015-05-28 10:08:15.993 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: IVar Tracking:              ON (ignoring)
2015-05-28 10:08:15.993 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Batch limit:                1
2015-05-28 10:08:15.994 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Wifi sending only:          OFF
2015-05-28 10:08:15.994 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Battery save feature:       ON
2015-05-28 10:08:15.996 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Offline dispatch cache:     -1
2015-05-28 10:08:15.996 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Queued dispatch expiration: -1
2015-05-28 10:08:15.997 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Mobile Companion:           ON (ignoring)
2015-05-28 10:08:15.997 UICatalog_TealiumCompactLibrary[1214:1725072] TEALIUM 4.1.8c: Initialized.

6. 分发验证

分发验证的两种推荐方法

  • AudienceStream Live Events
  • 供应商仪表板

AudienceStream live events 提供了派发的实时可视化,如果 Tealium DataCloud Tag 已添加到同一 TIQ 账户-用户资料,即用于初始化库的账户。

具有实时处理功能的分析供应商(例如 Google Analytics),如果数据源已正确映射到目标供应商的变量,也可以用于验证派发。

注意:没有实时处理的供应商可能需要数小时才能更新其报告。

接下来做什么

现在,您已经成功集成了库,您应该确定 紧凑型或完整库版本最能满足您的需求。以下是一些主要区别

紧凑型 完整型
库编译大小 ~600 KB ~900 KB
初始化时间 +<1 ms +<1 ms
运行时内存使用量 +3.3 MB +5.0 MB
自定义数据跟踪
设备数据跟踪
生命周期跟踪
离线跟踪
标记桥接器
时间戳跟踪
AudienceStream 跟踪 没有
移动伴侣 没有
UI 自动跟踪 没有
视频跟踪 没有

(A) 继续使用紧凑型版本,为事件或视图出现添加所需的任何其他 跟踪调用

(B) 切换到完整版,参阅我们的基础实施指南,注意额外的配置要求。

还是决定不了?浏览我们的Wiki页面获取更多信息,或阅读TealiumIQ社区中的一些移动相关帖子(咨询您的Tealium账户经理以获取访问权限)。

联系我们

有疑问或评论吗?

  • 问题页面发布代码问题。
  • 联系您的Tealium账户经理

升级通知

新功能

  • 4.1.3 URL请求使用NSURLSession针对iOS 7及以上版本的目标
  • 4.1.1 移除了添加的自定义数据API
  • 4.1 添加了标记桥接API
  • 4.1 提供了Swift桥接头
  • 4.0 现已支持TIQ的新移动发布设置中找到的远程配置选项
  • 3.3.1 添加了对iOS 8.0+的支持
  • 3.3 添加了对自动追踪中Class排除功能的支持
  • 3.2 添加了自我线程管理 - 库调用现在可以从任何线程安全地进行。
  • 3.2 添加了对受众流跟踪的支持
  • 3.1 用类级别方法替换了较老的共享实例调用
  • 3.1 将导入头重命名为<TealiumLibrary/Tealium.h>

近期代码更新

  • 4.1.11 标记桥接远程命令现在始终发送响应
  • 4.1.11 在机器名查找中添加了malloc NULL保护
  • 4.1.10 重新启用了接口方向数据源
  • 4.1.10 通过添加远程命令方法添加远程命令时,减少了重试定时器
  • 4.1.9 改进了解序列化崩溃日志中的异常处理
  • 4.1.8 修复了与可达性常量潜在的符号冲突
  • 4.1.7 修复了网络可达性管理器中的小内存泄漏
  • 4.1.7 现在使用UIDevice信息访问是线程安全的
  • 4.1.6 修复了阻止崩溃跟踪调用处理的问题
  • 4.1.6 重构了分发队列处理/批处理,并修复了递归边缘情况
  • 4.1.5 在紧凑库中,现在为对象自定义数据返回适当的字典
  • 4.1.5 改进了分发处理速度并减少了内存压力
  • 4.1.4 修复了在移动发布设置解析中的问题
  • 4.1.3 修复了重复抑制问题
  • 4.1.3 数据源更新
  • 4.1.3 自动追踪视图调试日志修复
  • 4.1.2 修复了排除类的问题
  • 4.1.1 移除了严格的数据源小写化
  • 4.1.1 更新队列和分发系统
  • 4.1.1 生命周期数据报告修复
  • 4.1.1 较小的TagBridge兼容性修复
  • 4.1 将直接自定义数据访问替换为线程安全的读取和写入方法
  • 4.1 现在严格执行分发数据键小写化
  • 4.0.6 重新引入了armv7s切片,改进了Mobile Companion的解锁、日志输出、线程处理和低内存处理
  • 4.0.5 通过TIQ及头文件文档改进了配置
  • 4.0.4 稳定性增强
  • 4.0.2 和 4.0.3 支持iOS 8.1以及额外的性能优化
  • 4.0.1 修复了自动跟踪性能优化中的错误,禁用和启用调用修复,手动跟踪调用在与事件调用的类型覆盖下像预期的那样触发

本版本已知问题

  • Call_eventtype: 异常(崩溃)调用报告为 autotracked:false - 应为 true


版权所有 (C) 2012-2015,Tealium Inc。