Y a-t-il quelque chose de similaire à getsharekit.com pour Android? Il permet de partager des URL vers des sites de réseaux sociaux. Y a-t-il quelque chose de similaire ou dois-je coder séparément pour facebook, Twitter et email?Partage d'URL vers Facebook, Twitter et e-mail dans Android?
Répondre
Je ne sais pas si c'est ce que vous voulez dire, mais vous pouvez utiliser le menu de partage intégré dans Android ...
Vous pouvez partager une URL à Facebook, Twitter, Gmail et plus (aussi longtemps que le des applications installées sur votre appareil) en utilisant intentions:
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_SUBJECT, "Sharing URL");
i.putExtra(Intent.EXTRA_TEXT, "http://www.url.com");
startActivity(Intent.createChooser(i, "Share URL"));
Si l'application que vous souhaitez partager à n'est pas installé sur l'appareil de l'utilisateur, par exemple - facebook, vous devrez utiliser Facebook SDK.
Si vous voulez que votre activité pour gérer les données de texte partagées à partir d'autres applications aussi bien, vous pouvez ajouter à votre AndroidManifest.xml:
<activity android:name=".ShareLink">
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
Hope this helps!
Je suis à la recherche d'une solution sans utiliser les applications installées. – sunil
Cela ne fonctionne pas avec Facebook –
merci, j'ai changé de texte/html en texte/plaine et cela a bien fonctionné, en plus d'ajouter la section de filtre d'intention à l'activité –
Pour moi, cela fonctionne très bien:
startActivity(Intent.createChooser(new Intent(Intent.ACTION_SEND,
Uri.parse("http://...")),"Share URL"));// share url is on your own
ne fonctionne pas et donne "aucune application ne peut effectuer cette action" –
Ne fonctionne pas: erreur "aucune application ne peut effectuer cette action" –
raison pour laquelle aucune application ne peut effectuer cette action est qu'aucun type de mime n'a été spécifié. Filtre d'application ENVOYER l'action sur le type. Si vous ne le spécifiez pas (texte/clair) aucune application n'interceptera cette intention –
Pour facebook, vous pouvez utiliser `
https://m.facebook.com/sharer.php?u=website_url&t=titleOfThePost
url site pourrait être une refereing chose à une ressource par exemple si vous voulez obtenir une image à partir d'internet et la placer sur votre mur.
espoir que cela aiderait
Vous pouvez essayer ...
private void shareTextUrl() {
Intent share = new Intent(android.content.Intent.ACTION_SEND);
share.setType("text/plain");
share.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
share.putExtra(Intent.EXTRA_SUBJECT, "Title Of The Post");
share.putExtra(Intent.EXTRA_TEXT, "<source url>");
startActivity(Intent.createChooser(share, "Share text to..."));
}
Voici mon implémentation, vous pouvez ajouter d'autres applications si vous le souhaitez en ajoutant simplement les noms de package. Ce code trie également les applications en fonction de leurs noms.
List<Intent> targetShareIntents = new ArrayList<Intent>();
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
PackageManager pm = getActivity().getPackageManager();
List<ResolveInfo> resInfos = pm.queryIntentActivities(shareIntent, 0);
if (!resInfos.isEmpty()) {
System.out.println("Have package");
for (ResolveInfo resInfo : resInfos) {
String packageName = resInfo.activityInfo.packageName;
Log.i("Package Name", packageName);
if (packageName.contains("com.twitter.android") || packageName.contains("com.facebook.katana")
|| packageName.contains("com.whatsapp") || packageName.contains("com.google.android.apps.plus")
|| packageName.contains("com.google.android.talk") || packageName.contains("com.slack")
|| packageName.contains("com.google.android.gm") || packageName.contains("com.facebook.orca")
|| packageName.contains("com.yahoo.mobile") || packageName.contains("com.skype.raider")
|| packageName.contains("com.android.mms")|| packageName.contains("com.linkedin.android")
|| packageName.contains("com.google.android.apps.messaging")) {
Intent intent = new Intent();
intent.setComponent(new ComponentName(packageName, resInfo.activityInfo.name));
intent.putExtra("AppName", resInfo.loadLabel(pm).toString());
intent.setAction(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, "https://website.com/");
intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.share_text));
intent.setPackage(packageName);
targetShareIntents.add(intent);
}
}
if (!targetShareIntents.isEmpty()) {
Collections.sort(targetShareIntents, new Comparator<Intent>() {
@Override
public int compare(Intent o1, Intent o2) {
return o1.getStringExtra("AppName").compareTo(o2.getStringExtra("AppName"));
}
});
Intent chooserIntent = Intent.createChooser(targetShareIntents.remove(0), "Select app to share");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetShareIntents.toArray(new Parcelable[]{}));
startActivity(chooserIntent);
} else {
Toast.makeText(getActivity(), "No app to share.", Toast.LENGTH_LONG).show();
}
}
Vous pouvez également utiliser ShareCompat classe de la bibliothèque de soutien.
ShareCompat.IntentBuilder.from(activity)
.setType("text/plain")
.setChooserTitle("Share URL")
.setText("http://www.url.com")
.startChooser();
https://developer.android.com/reference/android/support/v4/app/ShareCompat.html
- 1. iPhone partage d'intégration Gigya Facebook, twitter incohérence
- 2. Android facebook/twitter partager bouton
- 3. Facebook Partage dans les emails
- 4. Intégration de Facebook et Twitter avec mon application Android
- 5. stackexchange Boutons facebook et twitter
- 6. App Twitter dans android
- 7. comment extraire vers, sujet etc fron email dans l'émulateur android?
- 8. facebook se connecter et email de l'utilisateur
- 9. API Facebook - uids email
- 10. Email Hashes sur Facebook
- 11. twitter lien de partage d'erreur
- 12. Facebook et Twitter Connect: Stockage AccessToken utilisateur
- 13. Définition des statuts Twitter et Facebook
- 14. Video Overlay sur FaceBook et Twitter Profil
- 15. Fusionner Twitter Outh et Facebook Connect Friends
- 16. Problème dans la fonctionnalité de partage facebook
- 17. Télécharger une photo vers Facebook avec Facebook Android SDK dans Android
- 18. Android Inline Images dans Email
- 19. Besoin de recommandations pour Twitter et Facebook Gems
- 20. fonctionnalité de partage dans android
- 21. Comment implémenter Facebook et Twitter dans une application iPhone
- 22. Facebook et Twitter dans un environnement de kiosque ... Déconnexions automatiques?
- 23. Le moyen le plus facile de partager sur facebook, twitter et par e-mail?
- 24. Partage de ressources entre le service et l'application dans Android
- 25. Comment intégrer twitter, facebook dans l'application iPhone
- 26. Sélecteur d'intention de partage Android
- 27. twitter l'authentification du serment android
- 28. Facebook partage description codage étrangeté
- 29. Android ajouter contact email
- 30. Comment créer un service de partage de contenu comme le bouton Tweet ou le partage Facebook
Un peu meilleures réponses pour chaque cas se trouvent dans les questions suivantes: [Facebook] (http://stackoverflow.com/questions/7545254/android-and-facebook-share-intent) , [Twitter] (http://stackoverflow.com/questions/2077008/android-intent-for-twitter-application), [email] (http://stackoverflow.com/questions/8701634/send-email-intent) (inclure l'URL dans le corps de l'e-mail en utilisant 'Intent.EXTRA_TEXT'). – Jonik
Ceci est ma solution qui fonctionne bien juste pour partager l'URL sur Facebook, http://stackoverflow.com/a/29529335/513413 – Hesam