Unity SDK使用AVAnalytics报错

void Start () {
    AVAnalytics.InitAsync(new AVAnalytics_device());
    AVAnalytics.Current.TrackAppOpened(); // 记录本次应用的打开是用户主动打开
    AVAnalytics.Current.CloseSession(); // 结束这一次统计
}

运行到这里时会提示错误

NullReferenceException: Object reference not set to an instance of an object
GameMgr.Start () 



void OnApplicationPause(bool pauseStatus)
{
    print("pauseStatus = " + pauseStatus);
    AVAnalytics.Current.CloseSession(); // 结束这一次统计
}

也会这样提示,并且两个地方都会卡住程序无法继续运行,请问应该怎么办?谢谢!

相关问题:https://forum.leancloud.cn/t/unity-sdk-avanalytics/18232

 AVAnalytics.InitAsync(new AVAnalytics_device());

是一个异步方法,你需要这么干:

  AVAnalytics.InitAsync(new AVAnalytics_device()).ContinueWith(t =>
  {
     AVAnalytics.Current.TrackAppOpened(); // 记录本次应用的打开是用户主动打开
     AVAnalytics.Current.CloseSession(); // 结束这一次统计 
  });

啊 原来是这个意思;或者说我在Continue里加个flag代表inti完成,然后所有需要调用统计和closeSession的地方都先进行flag的判断,确保init成功后再统计对吧?

另外2个小问题:
1 如果只InitAsnyc但不进行任何track,这样是统计不到任何数据的吗?
2 每次进行了一个行为统计后就立即调用CloseSession,是否建议这样以及这样是否会有问题?

非常感谢!!