使用Facebook的Unity插件(v5.0.3)在Android上运行Unity游戏。 Facebook登录已经为大多数用户提供了一段时间的正常工作。 虽然最近我们收到了Crittercism的以下崩溃报告。 好奇,如果有其他人经历过这个并有一些提示吗?
我们非常确定我们在C夏普代码中正确调用FB.Init() - 使用Android监视工具跟踪流程以查看日志。
与此同时,我们添加了更多日志记录以尝试获取更多信息。
谢谢!
Stack Trace
_________________________________
0 java.lang.Exception: NullReferenceException: Facebook object is not yet loaded. Did you call FB.Init()?
1 at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
2 at com.unity3d.player.UnityPlayer.a(Unknown Source)
3 at com.unity3d.player.UnityPlayer$a.run(Unknown Source)
4 Caused by: java.lang.Throwable: FB.get_FacebookImpl ()
5 FB.Login (System.String scope, Facebook.FacebookDelegate callback)
6 Zynga.Casino.Auth.FacebookUser.OnInitComplete ()
7 Zynga.Casino.Auth.FacebookUser.LogIn ()
8 Zynga.Poker.Auth.Unity.FacebookLogin.LogInFacebookUser ()
9 Zynga.Poker.Auth.Unity.FacebookLogin.OnPress (Boolean isDown)
10 UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
11 UICamera:Notify(GameObject, String, Object)
12 UICamera:ProcessTouch(Boolean, Boolean)
13 UICamera:ProcessTouches()
14 UICamera:Update()
15
16 ... 3 more
17 java.lang.Throwable: FB.get_FacebookImpl ()
18 FB.Login (System.String scope, Facebook.FacebookDelegate callback)
19 Zynga.Casino.Auth.FacebookUser.OnInitComplete ()
20 Zynga.Casino.Auth.FacebookUser.LogIn ()
21 Zynga.Poker.Auth.Unity.FacebookLogin.LogInFacebookUser ()
22 Zynga.Poker.Auth.Unity.FacebookLogin.OnPress (Boolean isDown)
23 UnityEngine.GameObject:SendMessage(String, Object, SendMessageOptions)
24 UICamera:Notify(GameObject, String, Object)
25 UICamera:ProcessTouch(Boolean, Boolean)
26 UICamera:ProcessTouches()
27 UICamera:Update()
28
29 at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
30 at com.unity3d.player.UnityPlayer.a(Unknown Source)
31 at com.unity3d.player.UnityPlayer$a.run(Unknown Source)
答案 0 :(得分:0)
我知道我迟到了 7 年,但希望这对某人有所帮助
我在我们的应用中遇到了类似的问题。我们使用的是处理 Facebook 初始化的内部 SDK。在加载新场景之前,我通过显式等待 FB 初始化在协程中完成来解决该问题。
FB.Init()
调用是异步的。我的假设是,如果在 init 完成之前场景发生了变化,它会保持未初始化状态。由于我们的内部 SDK,我无法修改 onInitComplete
回调,所以这是我能做的最好的黑客修复。
IEnumerator LoadMenuSceneRoutine()
{
while (!FB.IsInitialized)
{
yield return null;
}
LoadMenuScene();
}