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

Mixpanel iOS Objective-C库技术文档

2024-12-20 00:59:03作者:邵娇湘

安装指南

通过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
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
139
1.91 K
kernelkernel
deepin linux kernel
C
22
6
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
192
273
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
923
551
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
421
392
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
145
189
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
74
64
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
344
1.3 K
easy-eseasy-es
Elasticsearch 国内Top1 elasticsearch搜索引擎框架es ORM框架,索引全自动智能托管,如丝般顺滑,与Mybatis-plus一致的API,屏蔽语言差异,开发者只需要会MySQL语法即可完成对Es的相关操作,零额外学习成本.底层采用RestHighLevelClient,兼具低码,易用,易拓展等特性,支持es独有的高亮,权重,分词,Geo,嵌套,父子类型等功能...
Java
36
8