Partager l’application «lien» dans Android

Je souhaite que mon utilisateur d’application puisse partager / recommander mon application à d’autres utilisateurs. J’utilise l’intention ACTION_SEND. J’ajoute du texte simple en disant: installez cette application géniale. Mais je ne trouve pas de moyen pour permettre aux utilisateurs d’accéder directement à l’écran d’installation de market place, par exemple. Tout ce que je peux leur fournir est un lien Web ou du texte. En d’autres termes, je cherche un moyen très direct pour les utilisateurs Android d’avoir mon application installée.

Merci pour toute aide / pointeurs,

Thomas

Cela vous permettra de choisir parmi le courrier électronique, WhatsApp ou autre.

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

Thomas,

Vous souhaitez fournir à vos utilisateurs un lien 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, chaque application dispose d’une page Détails qui fournit une vue d’ensemble de l’application pour les utilisateurs. Par exemple, la page comprend une brève description de l’application et des captures d’écran de celle-ci, si fournies par le développeur, ainsi que des commentaires des utilisateurs et des informations sur le développeur. La page Détails comprend également un bouton “Installer” qui permet à l’utilisateur de déclencher le téléchargement / l’achat de l’application.

Si vous souhaitez renvoyer l’utilisateur à une application spécifique, votre application peut amener l’utilisateur directement à la page Détails de l’application. Pour ce faire, votre application envoie une intention ACTION_VIEW qui inclut un paramètre d’URI et de requête dans ce format:

market: // détails? id =

Dans ce cas, le paramètre packagename est le nom complet du package de l’application cible, tel que déclaré dans l’atsortingbut package de l’élément manifest du fichier manifeste de l’application. Par exemple:

market: // détails? id = com.example.android.jetboy

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

Vous pouvez également utiliser la classe ShareCompat de la bibliothèque de support.

 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

Être plus exact

  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 souhaitez partager vos autres applications de votre dev. compte que vous pouvez faire quelque chose comme ça

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

Appelez cette méthode:

 public static void shareApp(Context context) { final Ssortingng 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); } 

Pour remplir automatiquement le nom de l’application et l’ID de l’application, vous pouvez utiliser ceci:

 int applicationNameId = context.getApplicationInfo().labelRes; final Ssortingng appPackageName = context.getPackageName(); Intent i = new Intent(Intent.ACTION_SEND); i.setType("text/plain"); i.putExtra(Intent.EXTRA_SUBJECT, activity.getSsortingng(applicationNameId)); Ssortingng text = "Install this cool application: "; Ssortingng link = "https://play.google.com/store/apps/details?id=" + appPackageName; i.putExtra(Intent.EXTRA_TEXT, text + " " + link); startActivity(Intent.createChooser(i, "Share link:")); 

Partager l’application avec titre est vous app_name, le contenu est le lien de votre application

 private static void shareApp(Context context) { final Ssortingng appPackageName = BuildConfig.APPLICATION_ID; final Ssortingng appName = context.getSsortingng(R.ssortingng.app_name); Intent shareIntent = new Intent(Intent.ACTION_SEND); shareIntent.setType("text/plain"); Ssortingng shareBodyText = "https://play.google.com/store/apps/details?id=" + appPackageName; shareIntent.putExtra(Intent.EXTRA_SUBJECT, appName); shareIntent.putExtra(Intent.EXTRA_TEXT, shareBodyText); context.startActivity(Intent.createChooser(shareIntent, context.getSsortingng(R.ssortingng .share_with))); } 

Je sais que cette question a reçu une réponse, mais je voudrais partager une solution alternative:

 Intent shareIntent = new Intent(Intent.ACTION_SEND); shareIntent.setType("text/plain"); Ssortingng shareSubText = "WhatsApp - The Great Chat App"; Ssortingng shareBodyText = "https://play.google.com/store/apps/details?id=com.whatsapp&hl=en"; shareIntent.putExtra(Intent.EXTRA_SUBJECT, shareSubText); shareIntent.putExtra(Intent.EXTRA_TEXT, shareBodyText); startActivity(Intent.createChooser(shareIntent, "Share With")); 

enfin ce code est travaillé pour moi pour ouvrir le client de messagerie de notre Android. Essayez cet extrait.

 Intent testIntent = new Intent(Intent.ACTION_VIEW); Uri data = Uri.parse("mailto:?subject=" + "Feedback" + "&body=" + "Write Feedback here....." + "&to=" + "[email protected]"); testIntent.setData(data); startActivity(testIntent); 

En fait, la meilleure façon de couper votre application entre utilisateurs, google (firebase) s’est avérée être une nouvelle technologie. est

  Uri dynamicLinkUri = dynamicLink.getUri(); Task shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.google.jo/")) .setDynamicLinkDomain("rw4r7.app.goo.gl") .buildShortDynamicLink() .addOnCompleteListener(this, new OnCompleteListener() { @Override public void onComplete(@NonNull Task task) { if (task.isSuccessful()) { // Short link created Uri shortLink = task.getResult().getShortLink(); Uri flowchartLink = task.getResult().getPreviewLink(); Intent intent = new Intent(); intent.setAction(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_TEXT, shortLink.toSsortingng()); intent.setType("text/plain"); startActivity(intent); } else { // Error // ... } } });