72 votes

Android facebook applicationId ne peut pas être null

J'ai suivi le tutoriel suivant pour intégrer mon application avec Facebook. Facebook tutoriel

J'ai suivi tout le tutoriel, mais j'ai été prise en applicationId cannot be null dans les deux cas, et c'est vraiment frustrant.

Mon FacebookActivity onCreate a la suivante, ce qui est exactement le même que le tutoriel:

public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState);
    uiHelper = new UiLifecycleHelper(this, callback);
    uiHelper.onCreate(savedInstanceState);
    setContentView(R.layout.main_fb);

    FragmentManager fm = getSupportFragmentManager();
    fragments[SPLASH] = fm.findFragmentById(R.id.splashFragment);
    fragments[SELECTION] = fm.findFragmentById(R.id.selectionFragment);

    FragmentTransaction transaction = fm.beginTransaction();
    for(int i = 0; i < fragments.length; i++) 
    {
        transaction.hide(fragments[i]);
    }
    transaction.commit();
}

Cependant, lorsque j'essaie d'afficher l'activité-je obtenir de l' applicationId cannot be null, et la ligne de LogCat points me à est: uiHelper.onCreate(savedInstanceState);

Alors j'ai essayé en commentant cette ligne, et l'activité s'affiche. Mais maintenant, quand je clique sur l' LoginButton, j'obtiens le même message d'erreur mais cette fois, est le point de moi de l'identificateur applicationid champ dans la LoginButton classe à partir de facebook.

J'ai déjà l'Id dans ma chaîne de valeurs et mon manifeste comme ceci:

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

J'ai essayé d'obtenir l'Id à l'aide de code, mais rien n'a changé.

Qu'est-ce exactement est à l'origine de tout cela?

225voto

MoshErsan Points 5119

vous devez définir votre applicationId dans le AndroidManifest.xml comme ceci:

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

sous <application android:label="@string/app_name".... tag

app_id est une chaîne dans votre strings.xml .


échantillon:

  <application android:label="@string/app_name"
                 android:icon="@drawable/icon"
                 android:theme="@android:style/Theme.NoTitleBar"
            >
        <activity android:name=".HelloFacebookSampleActivity"
                  android:label="@string/app_name"
                  android:windowSoftInputMode="adjustResize">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:name="com.facebook.LoginActivity"
                  android:theme="@android:style/Theme.Translucent.NoTitleBar"
                  android:label="@string/app_name" />
        <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
    </application>
 

** s'il vous plaît noter <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/> est dans <application> tag

- et dans strings.xml

 <string name="app_id">1389xxxxxxxx</string>
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X