我有两个不同的级别,在我的第二级我想用facebook提交一个高分。所以我已经将facebook sdk函数(来自fb doc)添加到我的第二级统一c#脚本中。 第一次加载这个级别工作正常,但在我完成并返回到第一级并再次加载第二级后,它会抱怨因为fb.init已经加载。
我的清醒()看起来像这样:
if (!FB.IsLoggedIn) {
FB.Init(SetInit, OnHideUnity);
}
我需要在哪里放置FB.Init函数以便不再调用它?两个级别都会再次加载。
答案 0 :(得分:0)
如果您将级别视为Unity3D中的场景,则应在Unity中调用FB.Init一次。不要再试一次呼叫方法。
答案 1 :(得分:0)
正如user3811917所述,FB init只能被调用一次。 Unity开发中很多时候你只想在应用程序的生命周期中调用一次函数,最常见的解决方法是创建一个单独的加载或引导场景。
基本上,这个场景的作用是加载,然后立即(在开始时)转换到游戏的第一个场景。通过向此场景添加脚本(在唤醒时运行),您可以调用几个在应用程序的整个生命周期中只调用一次的函数。这对于设置需要初始化一次的第三方插件很有用。您还可以在此场景中放置不可破坏的单例对象,以便您可以创建和初始化仅创建一次的场景持久对象。