IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Utilisation API FaceBook


Sujet :

Android

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Février 2011
    Messages
    64
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2011
    Messages : 64
    Points : 50
    Points
    50
    Par défaut Utilisation API FaceBook
    Bonjour

    J'aurais besoin pour le developpement de mon application d'utiliser facebook.
    J'ai donc suivi un tuto, mais j'ai toujours une exception lors du click sur le bouton facebook dans mon appli.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ERROR/AndroidRuntime(7284): FATAL EXCEPTION: main
    ERROR/AndroidRuntime(7284): java.lang.NullPointerException
    ERROR/AndroidRuntime(7284):     at com.facebook.android.Facebook.validateAppSignatureForIntent(Facebook.java:257)
    ERROR/AndroidRuntime(7284):     at com.facebook.android.Facebook.startSingleSignOn(Facebook.java:228)
    ERROR/AndroidRuntime(7284):     at com.facebook.android.Facebook.authorize(Facebook.java:190)
    ERROR/AndroidRuntime(7284):     at com.facebook.android.Facebook.authorize(Facebook.java:114)
    voici la partie de mon code qui est concerné

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    Facebook mFacebook;
    LoginButton mLoginButton;
    AsyncFacebookRunner mAsyncRunner;
    private static final String[] PERMISSIONS = new String[] {"publish_stream", "read_stream", "offline_access"};
     
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.affichage_vins_details);
     
    	mLoginButton = (LoginButton)this.findViewById(R.id.detailBtnPartager);
    	mFacebook = new Facebook("XXX");
    	mAsyncRunner = new AsyncFacebookRunner(mFacebook);
     
    	SessionStore.restore(mFacebook, this);
    	SessionEvents.addAuthListener(new SampleAuthListener());
    	SessionEvents.addLogoutListener(new SampleLogoutListener());
     
    	mLoginButton.init(getParent(), mFacebook, PERMISSIONS);
    }
     
    public class SampleAuthListener implements AuthListener {        
           public void onAuthSucceed() {
               Toast.makeText(getBaseContext(), "Vous êtes connectés", 1000);
     
           }
            public void onAuthFail(String error) {
           	Toast.makeText(getBaseContext(), "Erreur : "+error, 1000);
           }
    }
     
    public class SampleLogoutListener implements LogoutListener {
           public void onLogoutBegin() {
               ;
           }
     
           public void onLogoutFinish() {
               Toast.makeText(getBaseContext(), "Vous êtes déconnecté", 1000);      
     
            }
    }
    Dans le constructeur Facebook, a la place des XXX, j'ai mis l'id que mon appli fb devrait avoir (facebook qui la donne)

    J'ai fais une erreur de code ?

    EDIT: sinon, lorsque je crée un nouvel Intent avec Intent.ACTION_SEND, android me propose plusieurs choix.
    Ce que je voudrais, c'est remplir automatiquement le champ text et n'avoir plus qu'a appuyer sur publier (ca fonctionne avec les sms, mail, twitter etc, mais pas encore fb ...)

    Cordialement

  2. #2
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ERROR/AndroidRuntime(7284):     at com.facebook.android.Facebook.validateAppSignatureForIntent(Facebook.java:257)

    Peux tu me dire ce qui se trouve à cette ligne dans ton code. (Activity Facebook ligne 257).

    Merci.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Février 2011
    Messages
    64
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2011
    Messages : 64
    Points : 50
    Points
    50
    Par défaut
    voici la ligne 257 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ResolveInfo resolveInfo = activity.getPackageManager().resolveActivity(intent, 0);
    Mais, ce n'est pas moi qui ai codé ceci, la class Facebook vient de l'api facebook, tout ce que je fais, c'est de l'utiliser, avec la partie de code que j'avais mis dans mon premier post.

  4. #4
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    En tout cas tu as bien un pointeur null à c moment .

    Peux tu me montrer comment tu appelles dans tes classes, cette API .

    Merci
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  5. #5
    Membre du Club
    Étudiant
    Inscrit en
    Février 2011
    Messages
    64
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2011
    Messages : 64
    Points : 50
    Points
    50
    Par défaut
    toute mon utilisation de l'API Facebook se trouve dans les ligne que j'ai mis dans le premier post.
    Je remet le tout, avec les variable déclarée globalement (mais, c'est vraiment tout ce qui utilise la partie Facebook)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    import com.facebook.android.AsyncFacebookRunner;
    import com.facebook.android.Facebook;
    import com.max.SessionEvents.AuthListener;
    import com.max.SessionEvents.LogoutListener;
     
    public class Partager extends Activity implements OnClickListener{
     
    	Facebook mFacebook;
    	LoginButton mLoginButton;
    	AsyncFacebookRunner mAsyncRunner;
    	private static final String[] PERMISSIONS = new String[] {"publish_stream", "read_stream", "offline_access"};
     
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.partager);
    	mLoginButton = (LoginButton) findViewById(R.id.login);
     
    	mFacebook = new Facebook(XXX);
    	mAsyncRunner = new AsyncFacebookRunner(mFacebook);
     
    	SessionStore.restore(mFacebook, this);
    	SessionEvents.addAuthListener(new SampleAuthListener());
    	SessionEvents.addLogoutListener(new SampleLogoutListener());
     
    	mLoginButton.init(getParent(), mFacebook, PERMISSIONS);
    }
     
    public class SampleAuthListener implements AuthListener {        
            public void onAuthSucceed() {
                Toast.makeText(getBaseContext(), "Vous êtes connectés", 1000);
     
            }
     
            public void onAuthFail(String error) {
            	Toast.makeText(getBaseContext(), "Erreur : "+error, 1000);
            }
    }
     
    public class SampleLogoutListener implements LogoutListener {
            public void onLogoutBegin() {
                ;
            }
     
            public void onLogoutFinish() {
                Toast.makeText(getBaseContext(), "Vous êtes déconnecté", 1000);      
     
            }
    }
     
    }
    La seul partie que j'ai pas suivi, c'est le numéro a la place du XXX, mais c'est facebook qui me l'a fourni, donc je vais éviter de douter sur ca.

  6. #6
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    Brett, as tu résolu ton problème ? Je rencontre actuellement le même problème.
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

Discussions similaires

  1. Aide pour l'utilisation de l'api Facebook
    Par dark0502 dans le forum Langages
    Réponses: 0
    Dernier message: 21/07/2014, 14h35
  2. Utilisation de l'API Facebook PHP en local
    Par gawel1 dans le forum Langage
    Réponses: 1
    Dernier message: 02/12/2011, 16h34
  3. [API Facebook]Quels configurations faire pour utiliser l'API Facebook
    Par CLion dans le forum Développement Web en Java
    Réponses: 5
    Dernier message: 30/12/2008, 19h18
  4. C# utilisation api google
    Par mohican13 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/07/2006, 08h03
  5. Problème utilisation API MySQL
    Par naiko dans le forum C
    Réponses: 4
    Dernier message: 11/05/2006, 09h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo