登录后Facebook SDK崩溃

时间:2013-10-22 07:25:49

标签: facebook unity3d

我的代码似乎在Android上崩溃,出现NullPointer异常。但适用于ios模拟器。

private void CallFBInit()
{
    if(!FB.IsLoggedIn){
        FB.Init(OnInitComplete, OnHideUnity);
    }else{
        shareDialog();
    }
}
private void OnInitComplete()
{
    FB.Login("email,publish_actions",fbLoginCallBack);
}
private void fbLoginCallBack(FBResult result){
    shareDialog();  
}
   #region FB.Feed() example   
    public bool IncludeFeedProperties = false;
    private Dictionary<string, string[]> FeedProperties = new Dictionary<string, string[]>();
    private void CallFBFeed(FBResult result)
    {       
        shareDialog();

    }
    private void shareDialog(){
        Dictionary<string, string[]> feedProperties = null;
        if (IncludeFeedProperties)
        {
            feedProperties = FeedProperties;
        }
        FB.Feed(
            toId: FB.UserId,
            link: ConfigCS.FeedLink,
            linkName: ConfigCS.FeedLinkName,
            linkCaption: ConfigCS.FeedLinkCaption,
            linkDescription: ConfigCS.FeedLinkDescription,
            picture:ConfigCS.FeedPicture,
            mediaSource: ConfigCS.FeedMediaSource,
            actionName: ConfigCS.FeedActionName,
            actionLink: ConfigCS.FeedActionLink,
            reference: ConfigCS.FeedReference,
            properties: feedProperties,
            callback: CallbackForFeed
        );              
    }
    #endregion  
    void CallbackForFeed(FBResult result)
    {       
        if(result.Error!=null){
            errorMessage=ConfigCS.fbError+result.Text;
            showError=true;
            return;
        }else{
            Debug.Log ("FB Feed error");
    }
        return;
    }   
    private void OnHideUnity(bool isGameShown)
    {
        Debug.Log("Is game showing? " + isGameShown);
    }
    #endregion 

我不知道为什么。当显示登录对话框并返回到应用程序时,应用程序崩溃。但是,如果我再试一次,(因为用户被认为已登录),它可以正常工作。有人可以在我的代码中看到任何错误吗?

编辑: 更确切地说 1.当用户点击共享时,将打开fb登录对话框 2.一旦用户成功登录并返回应用程序,应用程序将与空指针异常

崩溃
  1. 我再次打开应用程序,然后单击“共享”(此时用户已经在崩溃前已登录)并且可以正常运行。
  2. 由于adb日志只是在facebook.loginActivity中说NullPointException,因此我无法确定错误。 我的启动函数是CallFBInit();

    enter image description here

    编辑: 我注意到的另一件事是,我已经安装了facebook sdk 4.3.3,但它在控制台中显示了4.2.5 enter image description here

    并在编辑器中 enter image description here

1 个答案:

答案 0 :(得分:0)

这似乎是新4.3.3 SDK的一个问题 我已降级到4.2.4并且工作正常。

这是一个已知问题吗?