2016-07-26 2 views
0

Ich versuche, this Facebook-SDK für React-Native zu implementieren.React-Native: _reactNativeFacebookLogin.FBLoginManager.loginWithPermissions ist undefined

Ich habe die Schritte in der README-Anleitung befolgt, kann sie aber nicht zur Arbeit bringen. Jedes Mal, wenn ich versuche, mit Facebook bekomme ich folgende Fehlermeldung anzumelden:

EDIT: Im das eine signierte APK

läuft

EDIT2: Der Fehler nur mit dem signierten APK geschieht - was könnte das bedeuten?

undefined is not a function (evaluating '_reactNativeFacebookLogin.FBLoginManager.loginWithPermissions') 
Unable to symbolicate stack trace: Bundle was not loaded from the packager 
FATAL EXCEPTION: mqt_native_modules 
Process: com.solopro.dogwood, PID: 5018 
com.facebook.react.modules.core.JavascriptException: undefined is not a function (evaluating '_reactNativeFacebookLogin.FBLoginManager.loginWithPermi 
ssions'), stack: 
[email protected]:62 
[email protected]:39 
[email protected]:26 
[email protected]:38 
[email protected]:20 
[email protected]:12 
[email protected]:38 
[email protected]:16 
[email protected]:42 
[email protected]:35 
[email protected]:12 
[email protected]:19 
[email protected]:33 
[email protected]:21 
<unknown>@14147:39 
[email protected]:16 
[email protected]:20 
[email protected]:32 
[email protected]:28 
[email protected]:48 
[email protected]6:28 
<unknown>@7613:22 
[email protected]:3 
[email protected]:6 
    at com.facebook.react.modules.core.ExceptionsManagerModule.showOrThrowError(ExceptionsManagerModule.java:90) 
    at com.facebook.react.modules.core.ExceptionsManagerModule.reportFatalException(ExceptionsManagerModule.java:78) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:372) 
    at com.facebook.react.bridge.BaseJavaModule$JavaMethod.invoke(BaseJavaModule.java:319) 
    at com.facebook.react.bridge.NativeModuleRegistry$ModuleDefinition.call(NativeModuleRegistry.java:187) 
    at com.facebook.react.bridge.NativeModuleRegistry.call(NativeModuleRegistry.java:62) 
    at com.facebook.react.bridge.CatalystInstanceImpl$NativeModulesReactCallback.call(CatalystInstanceImpl.java:432) 
    at com.facebook.react.bridge.queue.NativeRunnableDeprecated.run(Native Method) 
    at android.os.Handler.handleCallback(Handler.java:739) 
    at android.os.Handler.dispatchMessage(Handler.java:95) 
    at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31) 
    at android.os.Looper.loop(Looper.java:135) 
    at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:193) 
    at java.lang.Thread.run(Thread.java:818) 

Vielleicht ist dies sogar ein bekanntes Problem.

UPDATE: Der Fehler Hinweis darauf ist die Funktion „loginWithPermissions“, die in dem Android-Paket von react-native-fbsdk aber nur in dem iOS-Paket nicht einmal verfügbar ist. Ich habe keine Ahnung, warum diese Funktion verwendet wird. Ich benutze LoginManager.logInWithReadPermissions(['public_profile', 'email']).then(...) für die FB-Login

+0

Töten Sie den 'JS Server' und führen Sie 'react-native run-android' erneut aus. –

+0

Ich bekomme diesen Fehler mit einem signierten APK (Sollte diese Information in der Post hinzugefügt haben, sorry). –

Antwort

0

Höchstwahrscheinlich hatte der Fragesteller dieses Problem überwunden.

Manchmal, wenn einige Facebook-Bibliotheken (wie fbjs/lib/invariant) in Entwicklungsprozess verwendet werden, die zugehörigen Linien müssen Kommentarzeile vor dem Bau die Freigabe apk markiert werden.