当我调用此函数时,debug.log会正确显示,但是firebase事件在DebugView中根本不显示
public void fb_GameFail(int id)
{
Debug.Log("FIREBASE EVENT: LEVEL FAILED @Lvl " + (id + 1));
FirebaseAnalytics.LogEvent("level_fail:", "failID", (id + 1));
//FirebaseAnalytics.LogEvent("dead_player");
}
但是,如果我注释“ level_fail”事件并启用“ dead_player”事件(一个带有参数,另一个不带参数),则“ dead_player”事件会在DebugView中正确并实时显示。
我在这里想念什么吗?具有自定义事件的事件是否需要花费更多时间出现?
我不明白的是,我确实有另一个带有参数的事件,它可以正确显示:
及其代码与“ level_fail”事件完全相同:
public void fb_LevelUp(int id)
{
Debug.Log("FIREBASE EVENT: LEVEL COMPLETE @Lvl " + (id + 1));
FirebaseAnalytics.LogEvent("level_up", "ID", id + 1);
}
但这是自从我开始使用Firebase以来的主要问题,从第一天开始,“ level_up”事件就完美地显示了,而“ level_fail”却没有,我唯一可以补充的是,最初这两个事件具有相同的参数名称,它们都使用名为“ ID”的文本
FirebaseAnalytics.LogEvent("level_up", "ID", id + 1);
FirebaseAnalytics.LogEvent("level_fail", "ID", id + 1);
但是我非常怀疑那将是问题。
PS:
我记得单击“ Level_up”事件前面的“ 3个点”以启用参数跟踪,问题是“ 从不”出现“ level_fail”事件。
如果还不清楚,请在Unity(2018.1.0f2)中使用Firebase。
谢谢!
编辑:
但是当做同样的事情但是带有“ levelFail”事件时,什么也没有显示:
private void Update()
{
if (Input.GetKeyDown(KeyCode.Escape))
{
// FirebaseAnalytics.LogEvent("testingEVENT", "testID", Random.Range(0, 10));
fb_GameFail(GameManager._gameManager._currentLevel);
}
}
知道logcat显示该方法已正确调用:
答案 0 :(得分:2)
根据您的代码:
public void fb_GameFail(int id)
{
Debug.Log("FIREBASE EVENT: LEVEL FAILED @Lvl " + (id + 1));
FirebaseAnalytics.LogEvent("level_fail:", "failID", (id + 1));
//FirebaseAnalytics.LogEvent("dead_player");
}
我可以看到您在事件名称中为“ level_fail”使用了分号。据我所知,自定义事件名称中只能包含字母,数字和下划线。也许这就是导致问题的原因?
更新:感谢@ Pux0r3提供了指向文档的相关链接:firebase.google.com/docs/reference/cpp/group/event-names