web-dev-qa-db-fra.com

À la recherche d'exemples de SDK Android Facebook

J'ai regardé partout sur Internet et je n'arrive pas à trouver ce que je cherche ...

J'essaye juste de trouver un site avec quelques exemples sur la façon d'utiliser le SDK Android OFFICIEL de Facebook http://github.com/facebook/facebook-Android-sdk

Pour être précis, j'aimerais voir quelques exemples d'utilisation de notifications et de téléchargement de photos simple. Mais je prendrai n'importe quoi pour vous aider à vous familiariser avec l'utilisation du SDK. 

Si quelqu'un connaît des exemples, merci de les remercier!

15
brybam

J'ai posé une question similaire il y a quelques semaines concernant le SDK Android officiel de Facebook et l'affichage de contenu sur son mur ( Android/Java - Envoyer un texte simple sur le mur Facebook? ). Cela devrait vous aider à comprendre ce que signifie poster du texte sur son mur. Je devrais cependant souligner que vous devez d'abord créer une application Fackbook et demander une clé API à Fackbook.com ( https://kunukd.com/ ) ... s'il vous demande quelle est la plate-forme de l'application vous avez l’intention de créer, choisissez mobile.

Vous pouvez modifier le code dans le lien Dépassement de pile que j'ai posté (ci-dessus) pour publier des photos aussi. Cependant, selon la page officielle de Git pour le SDK Android de Facebook (sous "Problèmes connus"):

3.Les paramètres de l'API binaire (tels que le téléchargement d'images) ne sont pas encore supportés - à venir ...

Ainsi, alors que vous pouvez poster une photo sur votre mur si vous avez l'URL du fichier image (le fichier doit déjà être sur Internet), vous ne pouvez pas utiliser ce SDK pour envoyer des données binaires/octets de la photo à partir d'Android. appareil (encore ... au 24/07/10). Du moins, c'est ce que je comprends de la déclaration ci-dessus.

Remplacez les lignes suivantes de l'exemple de code que j'ai posté dans l'autre message Stack Overflow (lien ci-dessus):

Bundle parameters = new Bundle();
parameters.putString("message", "this is a test");// the message to post to the wall
facebookClient.dialog(this, "stream.publish", parameters, this);// "stream.publish" is an API call

avec ça

Bundle parameters = new Bundle();
parameters.putString("message", "Test Photo");
parameters.putString("attachment", "{\"name\":\"My Test Image\","
+"\"href\":\""+"http://www.google.com"+"\","
+"\"media\":[{\"type\":\"image\",\"src\":\""+"http://www.google.com/logos/mucha10-hp.jpg"+"\",\"href\":\""+"http://www.google.com"+"\"}]"
+"}");
facebookClient.dialog(this, "stream.publish", parameters, this);

et vous devriez pouvoir poster des photos sur votre mur (ainsi que du texte et des liens).

Pour plus d’aide sur la structuration de la chaîne "attachment", allez ici: http://www.mobisoftinfotech.com/blog/Android/845/ .

Sinon, envisagez d'utiliser un package tiers ou attendez que le SDK officiel soit mis à jour si vous devez publier des photos sur un album directement à partir de l'appareil.

15
RyanM

Vous pouvez le faire de cette façon:

byte[] data = null;
try {
    ContentResolver cr = mainActivity.getContentResolver();
    InputStream fis = cr.openInputStream(localSnapshotUri);
    Bitmap bi = BitmapFactory.decodeStream(fis);
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
    data = baos.toByteArray();              
} catch (FileNotFoundException e) {
    e.printStackTrace();
}     

Bundle params = new Bundle(); 
params.putString("method", "photos.upload");          
params.putByteArray("picture", data);

AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener());

Les paramètres utilisés ici sont:

  • localSnapshotUri qui pointe sur une image de vous/sdcard/.. ou où que ce soit :) 
  • mainActivity c'est l'activité principale de l'application
  • SampleUploadListener une implémentation de l'interface AsyncFacebookRunner.RequestListener

Bonne programmation!

2
plug-in

Vient de poster ici le moyen simple de télécharger une photo:

Facebook facebook publier une photo

Code:

byte[] data = null;

Bitmap bi = BitmapFactory.decodeFile(photoToPost);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bi.compress(Bitmap.CompressFormat.JPEG, 100, baos);
data = baos.toByteArray();

Bundle params = new Bundle();
params.putString("method", "photos.upload");
params.putByteArray("picture", data);

AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
mAsyncRunner.request(null, params, "POST", new SampleUploadListener(), null);
2
trgraglia

L'exemple le plus simple et le plus pratique de publication sur le mur de l'utilisateur sans le dialogue une fois connecté et avec le nouveau kit de développement logiciel de Facebook, est: http://www.integratingstuff.com 10/10/14/intégrer-facebook-dans-une-application-Android/

À propos, publier des images se fait avec:

parameters.putString("picture", "http://www.google.com/logos/mucha10-hp.jpg"); 
1
Yar