Доля приложения "ссылка" в Android
Я хочу, чтобы мой пользователь приложения мог поделиться/рекомендовать мое приложение другим пользователям. Я использую намерение ACTION_SEND. Я добавляю простой текст, говорящий по строкам: установите это приложение. Но я не могу найти способ позволить пользователям напрямую перейти на экран установки на рынке, например. Все, что я могу предоставить им, - это веб-ссылка или какой-то текст.
Другими словами, я ищу очень прямой способ для пользователей Android, чтобы мое приложение было установлено.
Спасибо за любую помощь/указатели,
Томас
Ответы
Ответ 1
Это позволит вам выбирать из электронной почты, whastapp или что-то еще.
try {
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_SUBJECT, "My application name");
String sAux = "\nLet me recommend you this application\n\n";
sAux = sAux + "https://play.google.com/store/apps/details?id=Orion.Soft \n\n";
i.putExtra(Intent.EXTRA_TEXT, sAux);
startActivity(Intent.createChooser(i, "choose one"));
} catch(Exception e) {
//e.toString();
}
Ответ 2
Томас,
Вы хотели бы предоставить своим пользователям ссылку market://
, которая приведет их непосредственно на страницу сведений о вашем приложении. Следующее из сайта developer.android.com:
Загрузка страницы с информацией о приложении
В Android Market каждое приложение имеет страницу сведений, которая предоставляет обзор приложения для пользователей. Например, страница включает короткий описание приложения и экрана его использование при использовании разработчик, а также отзывы от пользователей и информации о разработчик. Страница сведений также включает кнопку "Установить", которая позволяет пользователь запускает загрузку/покупку приложения.
Если вы хотите отсылать пользователя к конкретное приложение, ваше приложение может принимать пользователя напрямую на страницу сведений о приложении. к сделайте это, ваше приложение отправит ACTION_VIEW Цель, которая включает URI и параметр запроса в этом формате:
рынок://Детали ID =
В этом случае имя_пакета параметр - целевое приложение. полное имя пакета, так как объявлен в атрибуте пакета элемент манифеста в файл манифеста приложения. Для Пример:
рынок://Детали ID = com.example.android.jetboy
Источник: http://developer.android.com/guide/publishing/publishing.html
Ответ 3
Более точно
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.android.example"));
startActivity(intent);
или если вы хотите поделиться своими другими приложениями с вашим разработчиком. вы можете сделать что-то вроде этого
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://play.google.com/store/apps/developer?id=Your_Publisher_Name"));
startActivity(intent);
Ответ 4
Вызвать этот метод:
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 Aap Ka Sewak App at: https://play.google.com/store/apps/details?id=" + appPackageName);
sendIntent.setType("text/plain");
context.startActivity(sendIntent);
}
Ответ 5
Вы также можете использовать класс ShareCompat из библиотеки поддержки.
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
Ответ 6
Чтобы автоматически заполнить имя приложения и идентификатор приложения, вы можете использовать это:
int applicationNameId = context.getApplicationInfo().labelRes;
final String appPackageName = context.getPackageName();
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_SUBJECT, activity.getString(applicationNameId));
String text = "Install this cool application: ";
String link = "https://play.google.com/store/apps/details?id=" + appPackageName;
i.putExtra(Intent.EXTRA_TEXT, text + " " + link);
startActivity(Intent.createChooser(i, "Share link:"));
Ответ 7
Поделиться приложением с заголовком - это имя приложения, содержимое - ваша ссылка на приложение
private static void shareApp(Context context) {
final String appPackageName = BuildConfig.APPLICATION_ID;
final String appName = context.getString(R.string.app_name);
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
String 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.getString(R.string
.share_with)));
}
Ответ 8
Я знаю, что на этот вопрос был дан ответ, но я хотел бы поделиться альтернативным решением:
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
String shareSubText = "WhatsApp - The Great Chat App";
String 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"));
Ответ 9
наконец, этот код работает для меня, чтобы открыть почтовый клиент нашего андроида.
попробуйте этот фрагмент.
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);
Ответ 10
На самом деле лучший способ стричь ваше приложение между пользователями, google (firebase) доказал новую технологию Firebase Dynamic Link Через несколько строк вы можете сделать это
это документация
https://firebase.google.com/docs/dynamic-links/
и код
Uri dynamicLinkUri = dynamicLink.getUri();
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLink(Uri.parse("https://www.google.jo/"))
.setDynamicLinkDomain("rw4r7.app.goo.gl")
.buildShortDynamicLink()
.addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> 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.toString());
intent.setType("text/plain");
startActivity(intent);
} else {
// Error
// ...
}
}
});