制作电视应用
even better

推动OTT体验不断改进的实验

电视瞬息万变。领导充电。

吸引客户的见解

客户的行动胜于雄辩。你在听么?试用订阅流程,内容发现,广告展示位置和布局,以了解他们的需求。

优化每个渠道

每种观看媒体都是不同的。适用于移动观看的内容并不能用于家庭影院。因此,Optimizely的所有SDK都可以协同工作,因此您可以在客户旅程的每个步骤中发现最佳体验。

更快的迭代。风险较小。分阶段推出和即时更新

分阶段推出和即时更新使您可以快速迭代并毫不费力地启动。测试新想法并使用实时变量和简单的流量分配即时进行调整。

定位每个体验

通过高级定位,为合适的受众群体提供合适的体验。而且由于Optimizely的所有SDK都可以协同工作,因此您可以通过服务器端实验以及整个技术体系轻松地跨渠道和设备进行实验和个性化。

放心地运送。没什么好奇怪的

灵活的配置选项

在您应用的任何部分进行实验。轻松配置网络,日志记录,异常处理,集成等,以满足您的生产需求。

专注于表现

实时实验,对性能的影响最小。我们的轻量级开源SDK无需网络请求,无需启用App Store或Google Play评论即可对您的应用程序进行即时更新。

值得信赖的解决方案

在全球领先的实验平台上优化您的应用程序,该平台已在全球范围内提供数十亿次的体验。由Optimizely行业领先的技术提供支持 统计引擎。

                      
              

// Initialize an Optimizely manager

OPTLYManager *optlyManager = [OPTLYManager init:^(OPTLYManagerBuilder * _Nullable builder) { builder.projectId = @"projectId"; }];

// Initialize an Optimizely client by asynchronously downloading the datafile

[optlyManager initializeWithCallback:^(NSError * _Nullable error, OPTLYClient * _Nullable client) {

// Activate user in an experiment

OPTLYVariation *variation = [client activate:@"my_experiment" userId:@"userId"]; if ([variation.variationKey isEqualToString:@"control"]) {

// Execute code for the control

} else if ([variation.variationKey isEqualToString:@"treatment"]) {

// Execute code for the treatment

} else {

// Execute default code

}

// Track conversion event

[client track:@"my_conversion" userId:@"userId"]; }];
                      
              

// Initialize an Optimizely manager

let optimizelyManager : OPTLYManager? = OPTLYManager.init {(builder) in builder!.projectId = "projectId" }

// Initialize an Optimizely client by asynchronously downloading the datafile

optimizelyManager?.initialize(callback: { [weak self] (error, optimizelyClient) in

// Activate user in an experiment

if let variation = optimizelyClient?.activate("my_experiment", userId: "userId") { if (variation.variationKey == "control") {

// Execute code for the control

} else if (variation.variationKey == "treatment") {

// Execute code for the treatment

} } else {

// execute default code

}

// Track conversion event

optimizelyClient?.track("my_conversion", userId: "userId")
                      
              import com.optimizely.ab.Optimizely;
              
              

// Get an Optimizely client

OptimizelyClient optimizelyClient = optimizelyManager.getOptimizely();

// Activate user in an experiment

Variation variation = optimizelyClient.activate("my_experiment", "user_id"); if (variation != null) { if (variation.is("control")) {

// Execute code for variation A

} else if (variation.is("treatment")) {

// Execute code for variation B

} } else {

// Execute default code

}

// Track conversion event

optimizelyClient.track("my_conversion", user_id);

在技​​术堆栈中的任何地方进行实验

测试价格,搜索算法等。 优化全栈 使您可以在移动客户端之外进行实验,并深入后端。

完整的应用实验解决方案,开发人员无需担心

  • 开源SDK

    我们的tvOS和Android TV SDK是透明的,因此您确切地知道它们的工作方式。
  • 事件追踪

    在您的应用程序或任何其他服务中监控所有您关注的转化指标和KPI。
  • 分阶段推出

    首先将其推出给一小部分随机或有针对性的用户,以降低启动新功能的风险。
  • 自定义配置

    轻松交换自己的组件以进行日志记录,错误处理,事件分派,集成等。
  • 听众

    定义自定义属性以实现细粒度的定位和细分。
  • 多通道实验

    设置您自己的用户ID,以在所有客户渠道中创建一致的个性化体验。
  • 全栈实验

    与Optimizely的任何SDK一起运行涵盖前端和后端代码的实验。
  • 优化统计引擎

    借助全球领先的实验平台实时查看实验的影响。
  • 即时更新

    实时更新实验和变量,而无需等待下一个App Store版本。
  • 原始事件导出

    从Optimizely轻松下载完整的事件数据。
  • 流量分割

    在应用程序中的任何位置轻松创建随机流量开关,而不会影响性能。
  • 企业就绪的安全性

    角色和权限,2要素身份验证和单点登录。

开始使用我们的开发人员文档

本地电视和移动应用程序是一个巨大的机会,可以吸引我们的观众,并保持他们在快速改变的观看习惯方面的领先地位。借助Optimizely,我们可以轻松地在我们的应用程序中运行实验,并确保产品,营销和工程团队共同努力以实现一个共同的目标-提供可能的最佳客户体验。
考特尼·桑切斯(Courtney Sanchez)

商业智能和战略高级副总裁

立即开始在您的顶级应用中进行实验