126 votes

Partager l'application "link" dans Android

Je souhaite que les utilisateurs de mon application puissent la partager ou la recommander à d'autres utilisateurs. J'utilise l'intention ACTION_SEND. J'ajoute un texte en clair qui dit quelque chose comme : installez cette application sympa. Mais je n'arrive pas à trouver un moyen de permettre aux utilisateurs d'aller directement à l'écran d'installation de la place de marché par exemple. Tout ce que je peux leur fournir, c'est un lien web ou du texte. En d'autres termes, je cherche un moyen très direct pour les utilisateurs d'Android d'installer mon application.

Merci de votre aide et de vos conseils,

Thomas

320voto

Ton Points 941

Cela vous permettra de choisir entre l'email, whatsapp ou autre.

try { 
    Intent shareIntent = new Intent(Intent.ACTION_SEND);  
    shareIntent.setType("text/plain");
    shareIntent.putExtra(Intent.EXTRA_SUBJECT, "My application name");
    String shareMessage= "\nLet me recommend you this application\n\n";
    shareMessage = shareMessage + "https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID +"\n\n";
    shareIntent.putExtra(Intent.EXTRA_TEXT, shareMessage);  
    startActivity(Intent.createChooser(shareIntent, "choose one"));
} catch(Exception e) { 
    //e.toString();
}

46voto

lukjar Points 1878

Vous pouvez également utiliser ShareCompat de la bibliothèque d'assistance.

ShareCompat.IntentBuilder.from(activity)
    .setType("text/plain")
    .setChooserTitle("Chooser title")
    .setText("http://play.google.com/store/apps/details?id=" + activity.getPackageName())
    .startChooser();

https://developer.Android.com/reference/Android/support/v4/app/ShareCompat.html

21voto

William Tate Points 16777

Thomas,

Vous souhaitez fournir à vos utilisateurs un market:// qui les amènera directement à la page de détails de votre application. Ce qui suit provient de developer.Android.com :

Chargement de la page de détails d'une application

Dans Android Market, possède une page de détails qui fournit une une vue d'ensemble de l'application pour les utilisateurs. Par exemple, la page comprend une brève description de l'application et des d'écran de l'application en cours d'utilisation, si elles sont fournies par l'auteur de l'application. développeur, ainsi que les commentaires des utilisateurs et des informations sur le développeur. La page "Détails" comprend également un bouton "Installer" qui permet à l'utilisateur de l'utilisateur de déclencher le téléchargement/l'achat de l'application.

Si vous souhaitez faire référence à la application spécifique, votre application peut amener l'utilisateur directement à la page de détails de l'application. Pour ce faire, votre Pour ce faire, votre application envoie un ACTION_VIEW qui comprend un URI et un paramètre de requête dans ce format :

marché://details?id=

Dans ce cas, le pa i de l'application cible, comme déclaré dans l'attribut package de de l'élément manifest dans l'élément dans le fichier manifeste de l'application. Par exemple exemple :

market://details?id=com.example.Android.jetboy

Source : http://developer.Android.com/guide/publishing/publishing.html

14voto

Nilesh Panchal Points 645

Appeler cette méthode :

public static void shareApp(Context context)
{
    final String appPackageName = context.getPackageName();
    Intent sendIntent = new Intent();
    sendIntent.setAction(Intent.ACTION_SEND);
    sendIntent.putExtra(Intent.EXTRA_TEXT, "Check out the App at: https://play.google.com/store/apps/details?id=" + appPackageName);
    sendIntent.setType("text/plain");
    context.startActivity(sendIntent);
}

12voto

OWADVL Points 790

Pour être plus précis

   Intent intent = new Intent(Intent.ACTION_VIEW);
   intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.android.example"));
   startActivity(intent);

ou si vous voulez partager vos autres applications à partir de votre compte de développement, vous pouvez faire quelque chose comme ceci

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://play.google.com/store/apps/developer?id=Your_Publisher_Name"));
startActivity(intent);

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