Facebook登录时cocos2dx android崩溃

Zen*_*aro 2 android facebook android-ndk facebook-android-sdk cocos2d-x

我在我的cocos2d-x-2.2应用程序上集成了Facebook SDK for Android

我按照FacebookSDK文档中的说明调用登录函数,我还将Cocos2dxGameActivity更改为singleInstance以支持SSO.我的登录功能如下:

    public void loginToFacebook() {
    JLogger.e(null, "MatchThree.loginToFacebook 0");
    if ( Session.getActiveSession() == null || (!Session.getActiveSession().isOpened()) ) {
        Session.openActiveSession(this, true, new Session.StatusCallback() {

            @Override
            public void call(Session session, SessionState state, Exception exception) {
                //
                JLogger.e("Facebook", "loginToFacebook call");
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,在openActiveSession调用时,应用程序始终在本机代码中因以下空指针异常而崩溃:

11-18 11:13:37.981:E/cocos2d-x断言(6973):C:/cocos2d-x-2.2/projects/fb-test/proj.android /../../../ cocos2dx/platform /android/CCApplication.cpp函数:sharedApplication行:60 11-18 11:13:37.981:A/libc(6973):0x00000000(代码= 1)处的致命信号11(SIGSEGV),线程6994(Thread-16380)

以前有人遇到过这个吗?

感谢您的输入!

Hak*_*ton 8

有一个错误Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeOnPause() ,它在调用之前没有检查NULLapplicationDidEnterBackground();

添加这个:

    if (CCDirector::sharedDirector()->getOpenGLView()) {
        CCApplication::sharedApplication()->applicationDidEnterBackground();
    }
Run Code Online (Sandbox Code Playgroud)

你应该安全......

查看:

http://www.cocos2d-x.org/forums/6/topics/33956