Facebook Sdk Has Not Been Initialized FacebookSdk.sdkInitialize()

You have to use FacebookSdk.sdkInitialize(getApplicationContext()); before setContentView(R.layout.activity_main); as documentation states out. In case you need a complete facebook login example, check this one here.


Problem

While integrating Android SDK for a react-native project, I had finished the Android with React Native v0.30+ Project Configuration guide, and ran react-native run-android and then got this screen:

I learned that FacebookSdk.sdkInitialize is deprecated. see here

After some searching, I realized that the guide did not contain the steps to add the Facebook App ID for my app.

Solution

  1. Open android/app/src/main/AndroidManifest.xml file and look in the <application> tag to confirm that this meta-data tag exists:

    <meta-data android:name="com.facebook.sdk.ApplicationId"
              android:value="@string/facebook_app_id"/>
    
  2. Open android/app/src/main/res/values/strings.xml file and confirm that this there is a "facebook_app_id" string tag with your app id as the value:

    <string name="facebook_app_id">YOUR_APP_ID_HERE</string>
    
  3. Run react-native run-android.

These are the steps that worked for me.


You don't need to use FacebookSdk.sdkInitialize anymore. Check if your:

<meta-data android:name="com.facebook.sdk.ApplicationId"
            android:value="@string/facebook_app_id"/>

is inside <application> tag.


There is a reason why sdkInitialize() is deprecated.

Go to your manifest file within the android folder and add following

<meta-data android:name="com.facebook.sdk.ApplicationId"
      android:value="@string/facebook_app_id"/>

After that append in your strings.xml file (res/values/strings.xml) the string entry:

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

Close your Metro Builder and rebuild your Project using react-native run-android