Unity 官方发布 Unity Analytics,支持 iOS 和 Android 平台

  • Matt McComb
  • 王文刚

2015 年 2 月 1 日

话题:移动AndroidDevOpsiOS语言 & 开发

Unity 官方于上周宣布发布了 Unity Analytics,这项服务用于帮助游戏开发者收集游戏玩家数据。Unity Analytics 的当前版本为 open beta 版本,目前仅支持 IOS 和 Android 平台。

Unity 是一个跨平台的游戏引擎,使得开发者可以基于同一套代码开发多平台游戏。其支持 3 种编程语言,包括 C#、Unity Script (JavaScript for Unity) 和 Boo 语言,目前统计编程语言超过 80% 的为 C# 语言。 Unity 目前支持 17 个平台,横跨 web、移动、桌面和终端,包括 iOS、Android、BlackBerry 10、Windows Phone 8、PlayStation 4/Vita、Xbox One/360 和 Wii/Wii U。 其跨平台特性对移动开发者而言非常有吸引力,其中很多在 app store 上排名靠前的游戏正是使用了该引擎,包括神庙逃亡(Temple Run)、愤怒小鸟: 史诗(Angry Birds Epic)、捣蛋猪(Bad Piggies)和暗影之刃(Shadow Blade)。

如下的特性在 open beta 版本中已可用:

  • Metric Monitor- 仪表盘,它提供了常用的 KPI(key performance indicators),如玩家数量,会话时长和留存率。
  • Segment Builder- 支持基于用户属性或游戏行为模式来分割玩家。
  • Funnel Analyser- 可分析玩家失去兴趣的原因。
  • Data Explorer- 提供深度数据挖掘功能,用于解读目标玩家的数据,如对比 IOS 和 Android 用户的留存率。
  • Custom Data Collection- 捕获客户数据以追踪你所关注的重要事项,如通过收据确认查明你的应用内赢得的收益是不是正常的,还是存在一些虚假的成分。

Analytics 扩展包作为一个 Unity 的独立插件,可通过 Asset Store 下载 (在 Unity 编辑器中选择 Assets 菜单)。当 Analytics 插件包被导入到 Unity 工程后,可通过 C# 脚本来初始化 SDK:

using UnityEngine;
using System.Collections;
using UnityEngine.Cloud.Analytics;

public class UnityAnalyticsIntegration : MonoBehaviour {

  // 初始化 SDK
  void Start () {
    const string projectId = "PROJECTID-GOES-HERE-66fb5cf028d728bb";
    UnityAnalytics.StartSDK (projectId);
  }

}

这段脚本可以附属于任意游戏场景的 GameObject 之上(推荐添加到游戏的第一个场景的某个 GameObject 中,以此尽可能多地获得用户交互的数据记录)。整合 Analytics 后的基本功能可以追踪游戏的 KPI(performance indicators),如玩家数量、会话时长等。开发人员可以手工调用 analytics 使用上面所提到的这些附属功能。

analytics API 可记录关于货币的相关事件。例如,在应用内完成的购买。开发者可调用 API 的交易函数传递有关支付的信息。

// 引用 Unity Analytics SDK 命名空间 
using UnityEngine.Cloud.Analytics;

// 当游戏玩家触发购买事件则调用该 API 记录 
UnityAnalytics.Transaction(string productId, decimal price, string currency, string receipt, string signature);

开发者能够使用 API 的 CustomEvent 自定义事件来追踪游戏指定的事件,该事件接受事件名称和额外的字典参数。

// 引用泛型集合命名空间 
using System.Collections.Generic;

int totalPotions = 5;
int totalCoins = 100;
UnityAnalytics.CustomEvent("gameOver", new Dictionary
{
    { "potions", totalPotions },
    { "coins", totalCoins }
});,>

注意,在 CustomEvent API 使用时有一些限制:

  • 所需的字典参数要控制在 10 个之内。
  • 所需的字典参数总长度不能超过 500 个字符。
  • 在 1 小时之内每个客户端发布的自定义事件不能超过 100 次。
  • 每个游戏只能有最多 50 个自定义事件类型或名称。

最后,开发者可以使用 API 以分片的方式分析玩家的人口统计数据:

SexEnum gender = SexEnum.F;
UnityAnalytics.SetUserGender(gender);

int birthYear = 2014;
UnityAnalytics.SetUserBirthYear(birthYear);

开发者使用 Unity 账号可直接登录网站下载 beta 版本。另外,Analytics beta 已经集成到 Unity 标准版中,新用户可下载试用,如果你或者你的公司年收入低于 $100,000 则可免费使用。没有资格使用标准版本的企业或者个人,可付费($1,500)购买 Unity Pro 版本,包括工具套装和引擎插件。更多关于 Unity 的价格和 License 的信息,请参阅 Unity 的价格指南FAQ

查看英文原文: Unity Launches Analytics on iOS and Android

移动AndroidDevOpsiOS语言 & 开发