2016-11-28 8 views
0

を「Facebookでログイン」を押した後、私はこのようなFacebookのと私のアプリを統合しようとした:マイアプリのクラッシュ私が反応ネイティブfbsdk

const FBSDK = require('react-native-fbsdk'); 
const { 
    GraphRequest, 
    GraphRequestManager, 
    AccessToken, 
    LoginButton, 
    LoginManager 
} = FBSDK; 

....

 <LoginButton 
      style={styles.facebookRegButton} 
      readPermissions={['public_profile']} 
      onLogoutFinished={() => alert("User logged out")} /> 

私はFacebookのログインボタンを押すと、私のアプリがクラッシュし、エラー: "appname stopped"というエラーが発生します。

私はこれが私のmainActivity.javaファイルであるアンドロイド

での作業:

package com.students; 

import com.facebook.react.ReactActivity; 
import com.oblador.vectoricons.VectorIconsPackage; 
import com.github.yamill.orientation.OrientationPackage; 
import com.BV.LinearGradient.LinearGradientPackage; 
import android.content.Intent; 
import android.os.Bundle; 
import com.facebook.FacebookSdk; 
import com.facebook.CallbackManager; 
import com.facebook.react.ReactPackage; 

public class MainActivity extends ReactActivity { 
    CallbackManager mCallbackManager = MainApplication.getCallbackManager(); 
    /** 
    * Returns the name of the main component registered from JavaScript. 
    * This is used to schedule rendering of the component. 
    */ 
    @Override 
    protected String getMainComponentName() { 
     return "students"; 
    } 

    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     mCallbackManager.onActivityResult(requestCode, resultCode, data); 
    } 
} 

とMainApplication.javaファイル:

package com.students; 

import android.app.Application; 
import android.util.Log; 

import com.facebook.react.ReactApplication; 
import com.facebook.reactnative.androidsdk.FBSDKPackage; 
import com.imagepicker.ImagePickerPackage; 
import com.facebook.react.ReactInstanceManager; 
import com.facebook.react.ReactNativeHost; 
import com.facebook.react.ReactPackage; 
import com.facebook.react.shell.MainReactPackage; 
import com.facebook.CallbackManager; 
import com.facebook.FacebookSdk; 
import com.facebook.reactnative.androidsdk.FBSDKPackage; 
import com.facebook.appevents.AppEventsLogger; 

import java.util.Arrays; 
import java.util.List; 

public class MainApplication extends Application implements ReactApplication { 

    private static CallbackManager mCallbackManager = 
    CallbackManager.Factory.create(); 

    protected static CallbackManager getCallbackManager() { 
    return mCallbackManager; 
    } 

    private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { 
    @Override 
    protected boolean getUseDeveloperSupport() { 
     return BuildConfig.DEBUG; 
    } 

    @Override 
    protected List<ReactPackage> getPackages() { 
     return Arrays.<ReactPackage>asList(
      new MainReactPackage(), 
      new FBSDKPackage(mCallbackManager), 
      new ImagePickerPackage() 
    ); 
    } 
    }; 

    @Override 
    public void onCreate() { 
    super.onCreate(); 
    FacebookSdk.sdkInitialize(getApplicationContext()); 
    AppEventsLogger.activateApp(this); 
    } 

    @Override 
    public ReactNativeHost getReactNativeHost() { 
     return mReactNativeHost; 
    } 
} 

私は、ネイティブ版を反応させるには、次のとおりです。0.36.1

tnxたくさん

+0

ログを見るにはAndroidスタジオを使用できますか?より詳細なエラースタックトレースを取得できる可能性があります。 –

答えて

0

MainActivity.javaMainApplication.javaのみ編集する必要はありません。

それを解決するために:あなたはstrings.xmlを設定する必要があり

  1. MainActivity.javaが

  2. をデフォルトに。そのファイルはandroid\app\src\main\res\values\strings.xmlです。この行は<resources>タグ内に書いてください。

    <string name="facebook_app_id">IDFACEBOOKAPP</string>

    中にあなたのFacebookアプリIDを入れてください。

関連する問題