115 votes

FacebookSdk.sdkInitialize (Context) est obsolète

Je suis sur facebook-android-sdk-4.19.0 dans Android Studio et j'ai suivi le Facebook guide de démarrage rapide à https://developers.facebook.com/docs/android/getting-started (Cliquez sur le bouton de Démarrage Rapide pour vous connecter avec votre propre facebook compte). Dans le guide, il est dit de copier et coller le code suivant dans l'extrait de code de suivi de l'app journaux

import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;

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

Cependant, quand j'ai copier collé le code dans android studio, il semble que tous les FacebookSdk.sdkInitialize() les méthodes sont obsolètes. La documentation ici https://developers.facebook.com/docs/reference/android/current/class/FacebookSdk/ dit rien sur ce que la méthode à utiliser pour initialiser le kit de développement au lieu de sdkInitialize(). Quelle méthode dois-je utiliser?

142voto

Yupi Points 3116

À partir de la documentation sur la mise à niveau du SDK:

Le Facebook SDK est automatiquement initialisé au démarrage de l'Application. Si vous utilisez le Facebook SDK dans le processus principal et n'a pas besoin d'un rappel sur le SDK de l'initialisation de la fin, vous pouvez maintenant supprimer les appels à FacebookSDK.sdkInitialize. Si vous avez besoin d'un rappel, vous devez appeler manuellement la fonction de rappel dans votre code.

Reportez-vous à: https://developers.facebook.com/docs/android/upgrading-4x

Mise à JOUR

Dans SDK 4.22 l' title, description, caption et image domaine de l' FBSDKShareLinkContent sont obsolètes. Envisagez de les retirer de leur utilisation.

16voto

VaibhavBhosale Points 69
 FacebookSdk.sdkInitialize(getApplicationContext()); 
 

Cette méthode est obsolète, supprimez simplement cette ligne de code dans votre classe. Parce que selon la dernière version de Facebook, nous n'avons plus besoin d'initialiser manuellement le SDK, celui-ci est initialisé tout seul.

4voto

Rakesh Yadav Points 1028

Donc, au lieu d'appeler les méthodes obsolètes, vous pouvez appeler AppEventsLogger.activateApp(Application) intérieur de la classe onCreate () de votre classe d'application

 public class MyApplication extends Application{

    @Override
    public void onCreate() {
        super.onCreate();
        AppEventsLogger.activateApp(getApplication());
    }
}
 

-5voto

gounane Points 156

J'ai eu le même problème et voici comment j'ai résolu le problème: Mettez cette ligne de code dans votre fichier manifeste

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

https://developers.facebook.com/docs/android/getting-started Merci

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