1

我的代码似乎在 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. 我再次打开应用程序,然后单击共享(此时用户在崩溃之前已经登录)并且它可以工作。

我无法指出错误,因为 adb 日志在 facebook.loginActivity 中只显示 NullPointException。我的启动函数是 CallFBInit();

在此处输入图像描述

编辑:我注意到的另一件事是,我已经安装了 facebook sdk 4.3.3,但它在控制台中显示 4.2.5 在此处输入图像描述

并在编辑器中 在此处输入图像描述

4

1 回答 1

0

这似乎是我已降级到 4.2.4 的新 4.3.3 SDK 的问题,它工作正常。

这是一个已知问题吗?

于 2013-10-22T09:09:06.130 回答