Jump to content

[resolu] fonctionnement du Intent.action_pick_activity ??


chris2a

Recommended Posts

Bonjour tout le monde !!

Voilà j'aimerais mettre en place dans mon application, la fonction de partage (facebook, twitter, mail) comme celle de youtube par exemple mais je me perds un peu.

En cherchant j'ai vu qu'apparemment il faudrait utiliser Intent.action_pick_activity mais je n'arrive pas à voir comment l'employer dans mon cas.

Est ce que quelqu'un a déjà implémenté ce genre de choses ? ou bien est ce que quelqu'un sait où je peux trouver des exemples ??

Merci à tous !

Edit************

Si ce problème intéresse d'autres personnes, j'ai trouvé la solution ici :

http://www.androidguys.com/2009/11/02/a-call-to-action-action_send-that-is/

Link to comment
Share on other sites

Je suis pas sûr de comprendre exactement ce que tu veux faire.

Tu veux par exemple permettre à l'utilisateur d'accéder depuis ton application à l'appli Mail, ou l'appli Facebook ect... ??

Link to comment
Share on other sites

ben en fait je voudrais que l'utilisateur puisse partager une information à partir de mon application soit en publiant un tweet, soit en publiant sur son mur facebook, soit en envoyant un mail.

En fait je veux faire exactement la même chose que fait l'application youtube pour partager une vidéo...

J'espère que j'ai été plus claire !

Link to comment
Share on other sites

Ok, donc selon moi tu vas avoir le choix entre appeler les applications en leur passant des paramètres en plus ( en considérant que les applications sont installées ) soit tu créer les méthodes dans ton appli ( beaucoup plus de boulot ).

Je sais pas du tout comment tu peux appeler l'appli Facebook ou Twitter, par contre pour envoyer un mail, avec une piece jointe ( dans l'exemple ci dessous une image), c'est assez simple:

Intent sendIntent = new Intent(Intent.ACTION_SEND);
   sendIntent.setType("jpeg/image");
   sendIntent.putExtra(Intent.EXTRA_EMAIL, "me@gmail.com");
   sendIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
   sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///"+ sPhotoFileName));
   sendIntent.putExtra(Intent.EXTRA_TEXT, "email body");

   startActivity(Intent.createChooser(sendIntent, "Email:"));

L' Intent va appeler ton client mail en lui passant en paramètre tout ce que tu veux.

L'utilisateur n'a plus qu'a appuyer sur envoyer.

Après comme je te disais, pour twitter et facebook, j'ai aucune idée sur la méthode à adopter.

Mais je pense quand même qu'il te faudra recréer les méthodes d'envoie...

Link to comment
Share on other sites

Oui pour l'envoie d'email je l'ai déjà fait, c'est donc surtout pour facebook et twitter que je rencontre des difficultés...

Tu ne saurais pas si c'est possible d'avoir accès au code source de youtube ?

En tout cas je te remercie pour ta réponse et je vais continuer à chercher...

Link to comment
Share on other sites

Ça m'étonnerait que tu trouves les sources de Youtube.

Mais je te conseille de regarder s'il n'existe pas des projets opensource d'application Android Twitter et Facebook.

Sinon, une autre solution, c'est de voir si tu ne peux pas envoyer tes données par email vers Facebook et Twitter.

Personnellement, je suis en train de travailler sur une appli d'upload de photo, et j'ai cherché longtemps comment envoyer vers Flickr, lorsque je me suis aperçu qu'on pouvait faire un upload par mail.

Donc je te conseille d'explorer cette piste aussi.

Bon courage

Link to comment
Share on other sites

  • 1 month later...

Bonjour,

Je suis à la recherche de la même chose.

Pour avoir une idée plus précise, dans l'appli Gallerie du Nexus One on peut faire "partager" sur une photo et ça ouvre une petite liste (avec une animation sympa) d'applis vers lesquelles on peut envoyer l'image. De même lorsque je clique sur la photo d'un contact dans l'appli contact ça ouvre une fenetre identique (en fait une petite "bulle" qui pointe vers la ou j'ai cliqué) qui permet de choisir ce qu'on veut faire avec ce contact.

Je sais qu'en installant Twitter ça la liste s'est agrandie pour pouvoir partager dessus, donc c'est une liste dynamique. J'aimerais savoir

1- comment faire apparaitre cette liste dans mon appli

2- comment faire pour que mon appli apparaisse dans cette liste

Je suis sûr qu'on peut le faire mais j'espère que c'est pas trop compliqué.

Link to comment
Share on other sites

Normalement tu n'as besoin que de ce bout de code pour que cela fonctionne (à adapter à ton cas bien sûr) :

Intent intent = new Intent(Intent.ACTION_SEND);

intent.setType("text/plain");

intent.putExtra(android.content.Intent.EXTRA_SUBJECT, titre pour le partage);

intent.putExtra(android.content.Intent.EXTRA_TEXT, url);

startActivity(Intent.createChooser(intent, titre de la boite de dialogue));

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...