Перейти к содержанию
Fire Monkey от А до Я
  • 0

Запуск Google Play из своего приложения


andahay

Вопрос

Доброго времени суток. Есть android приложение, в нем есть диалоговое окно, которое предлагает перейти в google play и скачать другое приложение (pro версию), с 2 кнопками (да/нет). Как реализовать этот переход в Google play, чтобы в нем сразу было загружено нужное приложение. Использую Delphi XE7

Изменено пользователем andahay
Ссылка на комментарий

Рекомендуемые сообщения

  • 0
1 час назад, wamaco сказал:

Попробуйте открыт ссылку, указывающую на приложение PRO.... вроде должно получиться... (не уверен)

Подскажите, пожалуйста, как это сделать. Вроде тему находил, но модули, которые там используются (graphicsContentViewText, Androidapi.helpers, FMX.helpers.android) у меня не работают. Среда выдает ошибку File not found 'Имя модуля'

Ссылка на комментарий
  • 0
uses 
.....
  FMX.Platform.Android, FMX.Helpers.Android, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText, 
  Androidapi.JNI.JavaTypes, Androidapi.JNI.App, Androidapi.JNIBridge, Androidapi.JNI.Embarcadero, 
  AndroidApi.JNI.Net, Androidapi.JNI.Util;
...


var Intent: JIntent;
begin
    Intent := TJIntent.Create;
    Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
    try
        Intent.setData(StrToJURI('market://details?id=name_of_app')); //если установлен google play
    except
        Intent.setData(StrToJURI('http://play.google.com/store/apps/details?id=name_of_app')); //иначе открываем ссылку в браузере
    end;
    TAndroidHelper.Context.startActivity(Intent);

В uses есть даже лишнее, поскольку взял из  проекта, где были и другие функции под Android

Ссылка на комментарий
  • 0
1 час назад, Alex7wrt сказал:

uses 
.....
  FMX.Platform.Android, FMX.Helpers.Android, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText, 
  Androidapi.JNI.JavaTypes, Androidapi.JNI.App, Androidapi.JNIBridge, Androidapi.JNI.Embarcadero, 
  AndroidApi.JNI.Net, Androidapi.JNI.Util;
...


var Intent: JIntent;
begin
    Intent := TJIntent.Create;
    Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
    try
        Intent.setData(StrToJURI('market://details?id=name_of_app')); //если установлен google play
    except
        Intent.setData(StrToJURI('http://play.google.com/store/apps/details?id=name_of_app')); //иначе открываем ссылку в браузере
    end;
    TAndroidHelper.Context.startActivity(Intent);

В uses есть даже лишнее, поскольку взял из  проекта, где были и другие функции под Android

Видимо проблема в среде. У меня все эти юниты не поддерживаются. Знаете как это решить?(File not found 'Имя модуля')

Ссылка на комментарий
  • 0
23 часа назад, Alex7wrt сказал:

Лично у меня такого никогда не было. 

Возможно, при установке студии при выборе устанавливаемых пакетов вы не поставили галочку в пункте "Android"?

С модулями решил проблему. Теперь ругается на последнюю строчку ([DCC Error] Unit1.pas(1151): E2003 Undeclared identifier: 'TAndroidHelper')

Ссылка на комментарий
  • 0
17 часов назад, andahay сказал:

Теперь ругается на последнюю строчку ([DCC Error] Unit1.pas(1151): E2003 Undeclared identifier: 'TAndroidHelper')

Если не ошибаюсь, TAndroidHelper появился в Androidapi.Helpers позже XE7. До его появления использовался такой способ открытия URL:

 

function OpenURL(const URL: string; const DisplayError: Boolean = False): Boolean;
var
  Intent: JIntent;
begin
  Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW,
    TJnet_Uri.JavaClass.parse(StringToJString(TIdURI.URLEncode(URL))));
  try
    SharedActivity.startActivity(Intent);
    exit(true);
  except
    on e: Exception do
    begin
      if DisplayError then ShowMessage('Error: ' + e.Message);
      exit(false);
    end;
  end;
end;

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...