Cocos2DX AndroidがFacebookのログインに衝突しました
-
21-12-2019 - |
質問
Android用Facebook SDKをMy Cocos2D-X-2.2 App
に統合しています。私はFacebookSDKのマニュアルで指示されたログイン機能を呼び出して、SSOをサポートするためにSingleInstanceにCocos2DxGAMACTIVEを変更しました。ログイン機能は次のとおりです。
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");
}
});
}
}
.
しかし、openActiveSession
呼び出し時に、アプリケーションは常にネイティブコードで次のNULLポインタ例外でクラッシュします。
11-18 11:13:37.981:E / COCOS2D-Xアサート(6973):C:/ COCOS2D-X-2.2 / projects/fb-test/proj.android /../../../../COCOS2DX /プラットフォーム/ Android / CCApplication.cpp関数:SharedApplication行:60 11-18 11:13:37.981:A / LIBC(6973):0x00000000(CODE= 1)、スレッド6994(スレッド-16380)
誰もがこれまでに遭遇しますか?
あなたの入力をありがとう!
解決
Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeOnPause()
にバグがあります
これにより、applicationDidEnterBackground();
を呼び出す前にNULLをチェックしませんでした
これを追加:
if (CCDirector::sharedDirector()->getOpenGLView()) {
CCApplication::sharedApplication()->applicationDidEnterBackground();
}
.
安全なはずです...
チェックアウト:
所属していません StackOverflow