Unity 接入友盟统计过程详解(IOS)

简介: Unity 接入友盟统计过程详解(IOS)

一,获取AppKey,下载SDK

官网地址

进入广告注册/登录账号,在后台创建App
【进入工作台】 —> 右上角【产品】—> 选择【移动统计 U-App】
进入打如下界面,然后按步骤添加App信息,注册完成即可获得AppKey。(例如:59892f08310c9307b60023d0)
1.1

下载SDK 官网地址

点击上面传送门 或者 通过网站首页 — 开发者中心 — SDK下载 进入;
选择Unity3D 勾选游戏统计SDK 点击下面下载。
1.2

将下载的SDK zip包解压缩,目录如下图:

- 基础服务包: Common.unitypackage 
- 统计包: UmengGameAnalytics_v3.2.unitypackage

2.1


二,导入unitypackage,查看目录内容

将两个unitypackage导入Unity工程中,目录如下:

  • UmengAllinOneDemo:测试其他SDK的,直接删除
  • UmengExample:统计Demo打开场景 并 添加到Build Setting

2.2

导入后打包配置脚本 BuildPostProcessor.cs
报错如下:
2.3
2.4

由于API过时导致,删除34行,35行修改为:
2.5


三,查看SDK代码逻辑

对示例项目中调用代码添加一些注释,在自己的项目中调用需要修改的方法就可以了。

using UnityEngine;
using Umeng; // 引入友盟命名空间
using System.Collections.Generic;

public class UmengGameExample : MonoBehaviour
{
    void Start()
    {
        // 开始友盟初始化 【注意要换成自己申请的AppKey】
        // 参数:友盟appKey, 渠道名称
        GA.StartWithAppKeyAndChannelId("59892f08310c9307b60023d0", "umeng");
        // 设置是否打印sdk的信息 【正式包关闭】
        GA.SetLogEnabled(Debug.isDebugBuild);
    }


    void OnGUI()
    {
        int x = 150;
        int y = 50;
        int w = 500;
        int h = 100;
        int d = 150;

        // 进入游戏关卡
        if (GUI.Button(new Rect(x, y, w, h), "StartLevel1"))
        {
            GA.StartLevel("level1");
        }

        y += d;
        // 完成游戏关卡
        if (GUI.Button(new Rect(x, y, w, h), "FinishLevel"))
        {
            GA.FinishLevel("level1");
        }
        // 对应的还有一个 未完成游戏关卡
        // GA.FailLevel("level1");
        
        y += d;
        // 玩家获得奖励统计
        if (GUI.Button(new Rect(x, y, w, h), "Bonus"))
        {
            GA.Bonus(10, GA.BonusSource.Source10);
        }

        y += d;
        // 玩家支付统计
        if (GUI.Button(new Rect(x, y, w, h), "Pay"))
        {
            GA.Pay(19, GA.PaySource.Source10, 10);
        }

        y += d;
        // 基础事件
        if (GUI.Button(new Rect(x, y, w, h), "Event"))
        {
            GA.Event("EventTest");
        }

        y += d;
        // 不同的标签会分别进行统计,方便同一事件的不同标签的对比,为nil或空字符串时后台会生成和eventId同名的标签.
        if (GUI.Button(new Rect(x, y, w, h), "EventLabel"))
        {
            GA.Event("event1", "label");
        }

        y += d;
        // 属性事件
        if (GUI.Button(new Rect(x, y, w, h), "EventDict"))
        {
            var dict = new Dictionary<string, string>();
            dict.Add("Level1", "1");

            GA.Event("EventDict", dict);
        }
    }
}

自定义事件需要在后台添加相应的事件ID ,未添加时间ID的会在未注册事件标签页中显示:

使用前,请先到友盟App管理后台的 设置 -> 编辑 自定义事件 中添加相应的事件ID,然后在工程中传入相应的事件ID
eventId、attributes中key和value都不能使用空格和特殊字符,且长度不能超过255个字符(否则将截取前255个字符)
id, ts, du是保留字段,不能作为eventId及key的名称

3.1


四,导出Xcode 打包测试

将UmengExample添加到Build Setting,并进行报名和版号设置,准备打包Xcode;
4.1

官方文档说需要导出后,在xcode里手动添加依赖库:(实际上不需要)

  • TARGETS—>Build Phases—>Link Binary With Libraries—> + —>libz.tdb
  • TARGETS—>Build Phases—>Link Binary With Libraries—> + —>libsqlite3.tbd

4.2

通过打包编辑 BuildPostProcessor.cs (上面报错那个脚本)自动添加:
4.3

4.4
因此在Xcode中只需修改Team 就可以直接打包测试了。
4.5


到此为止,集成全部完成,小结:

  1. 申请AppKey,下载SDK
  2. 创建项目导入unitypackage
  3. 查看代码修改报错
  4. 打包测试

五,后台查看数据

实时数据页:
游戏运行后,到后台看有新用户增加的话,证明已经介入成功。
5.1
统计页自定义事件 (第一次5分钟左右刷新没有,过了10分钟左右刷新有结果 )
5.2


上面示例:源码链接

官方文档链接:

相关文章
|
3月前
|
语音技术 开发工具 图形学
Unity与IOS⭐一、百度语音IOS版Demo调试方法
Unity与IOS⭐一、百度语音IOS版Demo调试方法
|
3月前
|
图形学 Android开发 iOS开发
穿越数字洪流,揭秘Unity3d中的视频魔法!Windows、Android和iOS如何征服RTSP与RTMP的终极指南!
【8月更文挑战第15天】在数字媒体的海洋中,实时视频流是连接世界的桥梁。对于那些渴望在Unity3d中搭建这座桥梁的开发者来说,本文将揭示如何在Windows、Android和iOS平台上征服RTSP与RTMP的秘密。我们将深入探讨这两种协议的特性,以及在不同平台上实现流畅播放的技巧。无论你是追求稳定性的RTSP拥趸,还是低延迟的RTMP忠实粉丝,这里都有你需要的答案。让我们一起穿越数字洪流,探索Unity3d中视频魔法的世界吧!
62 2
|
3月前
|
语音技术 开发工具 图形学
Unity与IOS⭐二、Unity接入IOS版百度语音:语音唤醒
Unity与IOS⭐二、Unity接入IOS版百度语音:语音唤醒
Unity与IOS⭐二、Unity接入IOS版百度语音:语音唤醒
|
2月前
|
图形学 iOS开发 Android开发
从Unity开发到移动平台制胜攻略:全面解析iOS与Android应用发布流程,助你轻松掌握跨平台发布技巧,打造爆款手游不是梦——性能优化、广告集成与内购设置全包含
【8月更文挑战第31天】本书详细介绍了如何在Unity中设置项目以适应移动设备,涵盖性能优化、集成广告及内购功能等关键步骤。通过具体示例和代码片段,指导读者完成iOS和Android应用的打包与发布,确保应用顺利上线并获得成功。无论是性能调整还是平台特定的操作,本书均提供了全面的解决方案。
150 0
|
3月前
|
图形学 iOS开发
Unity与IOS⭐最基础的交互演示
Unity与IOS⭐最基础的交互演示
|
3月前
|
开发工具 图形学 iOS开发
Unity与IOS⭐Unity接入IOS SDK的流程图
Unity与IOS⭐Unity接入IOS SDK的流程图
|
3月前
|
图形学 数据安全/隐私保护 iOS开发
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
Unity与IOS⭐Xcode打包,上架TestFlight的完整教程
|
监控 iOS开发 MacOS
iOS 友盟崩溃日志分析——Binary images
iOS 友盟崩溃日志分析——Binary images
274 0
|
存储 监控 网络协议
iOS 友盟崩溃日志分析——Thread state
iOS 友盟崩溃日志分析——Thread state
600 0
|
监控 编译器 iOS开发
iOS 友盟崩溃日志分析——Backtraces
iOS 友盟崩溃日志分析——Backtraces
291 0