首页
/ Mixpanel iOS Objective-C库技术文档

Mixpanel iOS Objective-C库技术文档

2024-12-20 22:30:44作者:邵娇湘

安装指南

通过CocoaPods安装

  1. 如果是第一次使用CocoaPods,请先执行 gem install cocoapods 安装CocoaPods。若已安装,请跳至第2步。
  2. 在Xcode项目目录下运行 pod setup 创建本地CocoaPods规范镜像。
  3. 在终端运行 pod init 生成Podfile,并在生成的Podfile中添加 pod 'Mixpanel'
  4. 在Xcode项目目录下运行 pod install。CocoaPods将下载并安装Mixpanel库,并创建一个新的Xcode工作空间。在Xcode中打开这个工作空间,或者在终端输入 open *.xcworkspace

通过Carthage安装

Mixpanel支持使用Carthage将依赖项打包为框架。在Cartfile中包含以下依赖项:

github "mixpanel/mixpanel-iphone"

查阅Carthage文档了解更多信息。

通过Swift Package Manager安装

  1. 在Xcode中,选择文件 > 添加包...
  2. 输入此存储库的包URL,并选择版本大于或等于v4.0.0。

初始化项目

在AppDelegate.m中导入 #Import "Mixpanel/Mixpanel.h" 并在[application:didFinishLaunchingWithOptions:]方法中调用[sharedInstanceWithToken:],使用项目令牌作为参数。

#import "Mixpanel/Mixpanel.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
...
  [Mixpanel sharedInstanceWithToken:@"YOUR_API_TOKEN" trackAutomaticEvents:NO];
...
}

发送数据

初始化库后,Mixpanel将自动收集一些常见的移动事件。可以在项目设置中启用/禁用自动收集。此外,Mixpanel还会自动跟踪一些默认属性。了解更多默认属性

Mixpanel *mixpanel = [Mixpanel sharedInstance];
[mixpanel track:@"Sign Up" properties:@{
  @"source": @"Pat's affiliate site",
  @"Opted out of email": @YES
}];

检查发送成功

在Mixpanel中打开“事件”查看传入的事件。

一旦数据到达我们的API,通常需要约60秒才能处理、存储并在项目中查询。

完整代码示例

以下是一个涵盖快速入门指南中所有内容的可运行代码示例。

#import "Mixpanel/Mixpanel.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
...
  Mixpanel *mixpanel = [Mixpanel sharedInstanceWithToken:@"YOUR_API_TOKEN" trackAutomaticEvents:NO];
  [mixpanel track:@"Sign Up" properties:@{
    @"source": @"Pat's affiliate site",
    @"Opted out of email": @YES
  }];
...
}

常见问题

我想停止跟踪Mixpanel中的某个事件/事件属性,这可能吗?

是的,在Lexicon中,您可以拦截并丢弃传入的事件或属性。Mixpanel不会存储您选择丢弃的任何新事件或属性数据。查看这篇文章了解更多信息。

我有一个测试用户我想将其排除在跟踪之外,我该如何操作?

Mixpanel的客户端跟踪库包含一个optOutTracking()方法,它将用户的本地退出跟踪状态设置为“true”,并阻止从用户设备发送数据。在退出跟踪用户部分可以找到更详细的说明。

为什么我的事件没有显示出来?

为了保护电池寿命和客户带宽,Mixpanel库不会立即发送您记录的事件。相反,它会每60秒将事件批次发送到Mixpanel服务器,同时您的应用程序正在运行,以及当应用程序过渡到后台时。如果您想在特定时刻强制刷新,可以调用flush()

[mixpanel flush];

如果60秒后事件仍未显示,请检查是否已经退出了跟踪。您还可以启用Mixpanel调试和日志记录,它允许您查看来自Mixpanel库的调试输出。要启用它,请将enableLogging设置为true。

mixpanel.enableLogging = YES;

从iOS 14.5开始,我需要通过AppTrackingTransparency框架请求用户权限才能使用Mixpanel吗?

不需要,Mixpanel不使用IDFA,因此不需要通过AppTrackingTransparency(ATT)框架请求用户权限。

如果使用Mixpanel,如何回答App Store的隐私问题?

请参考我们的Apple App Developer Privacy Guidance

想了解更多!

不用担心,以下是一些您会发现有用的链接:

有任何问题?请联系Mixpanel 支持,快速与聪明人交流。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.49 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
518
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
786
1.58 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
803
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
973
2.29 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
482
312
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.02 K
769
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
811
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
648
287