在改变级别时将Fb.init()放在哪里

本文关键字:init 在哪里 Fb 改变 | 更新日期: 2023-09-27 18:14:14

我有两个不同的级别,在我的第二个级别,我想使用facebook提交一个高分。所以我将facebook sdk功能(来自facebook文档)添加到我的第二级unity c#脚本中。第一次加载这个关卡运行良好,但当我完成并返回到第一个关卡并再次加载第二个关卡时,它会抱怨,因为fb。Init已加载

My awake()是这样的:

if (!FB.IsLoggedIn)   {
   FB.Init(SetInit, OnHideUnity);
}

我需要把FB放在哪里?Init函数,所以它不会再被调用?

在改变级别时将Fb.init()放在哪里

正如user3811917所说,FB init应该只被调用一次。在Unity开发中有很多时候,你只想在应用程序的生命周期中调用一个函数,而解决这个问题的最常见方法是创建一个单独的加载或引导场景。

基本上,这个场景的作用是加载,然后立即(也许是在开始时)过渡到游戏的第一个场景。通过向这个场景添加脚本(在清醒状态下运行),您可以调用几个函数,这些函数在应用程序的整个生命周期中只被调用一次。这对于设置只需要初始化一次的第三方插件非常有用。你也可以在这个场景中放置不可销毁的单例对象,这样你就可以创建和初始化场景持久对象,这些对象只会被创建一次。

如果你指的是Unity3D中的场景关卡,你应该调用FB。在Unity中初始化一次。不要再尝试调用方法。