Вопрос

Здравствуйте. Пришла беда откуда не ждал, Delphi 10.2 не знает библиотеки androidapi.... FMX.Helpers.... и тд и тп. И никак не получается их установить, либо я тупой либо я даже незнаю что может быть. фалы *.dcu лежат в папке ...\lib\android\release.
Помогите решить проблему очень нужно использовать намерения. уже и переустанавливал платформу android не помогает.

25.JPG

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

10 ответов на этот вопрос

  • 0

LibraryPath для выбранной платформы в норме?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 час назад, kami сказал:

LibraryPath для выбранной платформы в норме?

Не знаю, поподробней можно пожалуйста

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 час назад, kami сказал:

LibraryPath для выбранной платформы в норме?

Вы про это?

26.JPG

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Для Android лучше Berlin использовать с последним Update 2. На Tokyo Android глючный и тормозит, фактически программы получаются не юзабельные, для Tokyo лучше подождать обновления. Все детали на форуме эбмаркадеры.

Изменено пользователем ENRGY
Kitty понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Решил переустановить делфи и сделал только хуже теперь нет компиляторов для андроид, ios и тд :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

что за версия и как определили что нет?

мобильная разработка только для Enterprise и Architect

может это VCL проект?

Kitty понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
2 часа назад, krapotkin сказал:

что за версия и как определили что нет?

мобильная разработка только для Enterprise и Architect

может это VCL проект?

версия 10.2 Tokyo. я регистрировал пробный ключ на 30 дней он был полноценным можно было и для андроида скомпилировать приложение и для ios и для linux но столкнулся с проблемой о которой и писал в самом начале, потом решил переустановить. получил ключик started версии, начал установку и выходит предложение установить только делфи для windows а для android linux ios не было, после чего я прекратил установку зарегистрировал еще один ключ новый на 30 дней но он такой же как и started версия. И теперь не могу понять как мне вернуть предыдущую версию с android и ios компиляторами как было изначально. И все еще остается вопрос почему делфи библиотеки не распознает. :( создал себе еще больше проблем чем было.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
2 часа назад, krapotkin сказал:

что за версия и как определили что нет?

мобильная разработка только для Enterprise и Architect

может это VCL проект?

а проект multi-crossfire 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 1
1 час назад, Rustam Bikeev сказал:

получил ключик started версии,

о чем и речь, в стартере есть только win32

нужен trial. Он идет в версии Architect

ENRGY и Kitty понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

На самом деле проблемы никакой не было, просто я дебил не переключился на компилятор андроида, потому он мне и подчеркивал красным эти библиотеки...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Похожие публикации

    • Автор: AlexShaman
      procedure TfMain.PhotoClick(Sender: TObject); var sPath,FLastPhotoName:string;   {$IF DEFINED(ANDROID)}   PhotoIntent: JIntent;   photoUri: Jnet_Uri;   JFileName: JFile;   {$ENDIF} begin   {$IF DEFINED(ANDROID)}   FLastPhotoName := '';   FLastPhotoFullName := '';   FMessageSubscriptionID := TMessageManager.DefaultManager.SubscribeToMessage(TMessageResultNotification, HandleActivityMessage);   PhotoIntent := TJIntent.JavaClass.init(TJMediaStore.JavaClass.ACTION_IMAGE_CAPTURE);   if (PhotoIntent.resolveActivity(TAndroidHelper.Context.getPackageManager()) <> nil) then   begin     FLastPhotoName := THashMD5.GetHashString('JPEG PHOTO FILE ' + DateTimeToStr(Now)) + '.jpg';     FLastPhotoFullName := TPath.Combine(TPath.GetSharedDocumentsPath, FLastPhotoName);     JFileName := TJFile.JavaClass.init(StringToJString(FLastPhotoFullName));     photoUri := TJnet_Uri.JavaClass.fromFile(JFileName);     PhotoIntent.putExtra(TJMediaStore.JavaClass.EXTRA_OUTPUT,         TJParcelable.Wrap((photoUri as ILocalObject).GetObjectID));     if PhotoIntent.resolveActivity(TAndroidHelper.Activity.getPackageManager) <> nil then       TAndroidHelper.Activity.startActivityForResult(PhotoIntent, REQUEST_IMAGE_CAPTURE);   end;   {$ENDIF}  
      Приложение камеры открывается, фото делается, но при закрытии приложение вылетает
      В логах ошибки
      java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity {com.embarcadero.test/com.embarcadero.firemonkey.FMXNativeActivity}: java.lang.NullPointerException
       
    • Автор: ENRGY
      Подскажите пожалуйста как определить что программа запустилась из AlarmManager?
      Я сделал это так, по аналогии с http://stackoverflow.com/questions/6751564/how-to-pass-a-boolean-between-intents
      В Java коде, который компилиться в итоге в classes.dex (с XE7 не нужен DEX файл, можно подключить Jar файл сразу к проекту!), добавил строчку
      public class AlarmReceiver extends BroadcastReceiver {
          public void onReceive(Context context, Intent intent) {
                  Intent TestLauncher = new Intent();                        
                  TestLauncher.setClassName(context, "com.embarcadero.firemonkey.FMXNativeActivity");
                  TestLauncher.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                  TestLauncher.putExtra("StartedFromAM", true);
                  context.startActivity(TestLauncher);
          }
      }
      По идее теперь при старте из AlarmManager, должно быть true в активити.
      Из Delphi пытаюсь получить это значение, но всегда возвращает false (0). 
       ShowMessage(SharedActivity.getIntent.getBooleanExtra(StringToJString('StartedFromAM'), false).ToString );
      И вот так тоже:
      ShowMessage ( MainActivity.getIntent.getBooleanExtra(StringToJString('StartedFromAM'), false).ToString);
      Не подскажете в чем может быть проблема?

       
    • Автор: Pax Beach
      В Android 6 на Berlin 10.1.1 перестала работать стандартная функция TakePhotoFromCameraAction.

      Иногда работает, иногда нет.
      Поэтому я решил написать нативную замену этой функции. За основу взят пример с портала разработчиков Android.
      Мой пример про видео на базе отправки Intetn смартфону и получение результата в виде другого Intent, отлично работает.
      Но для фотографий этот пример сыпется, после выполнения фотографирования система возвращается в мое приложение и оно вылетает с ошибкой:
      Если заглянуть в исходнки, там все обвязано сообщениями в лог монитора. Последнее сообщение «+ Intent is sent».
      Помогите пожалуйста разобраться, в чем может быть проблема?
       
      PhotoIntent.zip
    • Автор: Pax Beach
      Знающие люди, подскажите пожалуйста, как в iOS одно приложение может запустить другое приложение, как передать картинку в другое приложение, готовое его принять, как при запуске обрабатывать в своем приложении параметры, переданные из другого приложения?
      В Android для этого есть механизм Intent Filter, а как это устроено в iOS, и как с этим работать в RAD Studio?
       
    • Автор: Pax Beach
      Я хочу запустить приложение из другого приложения под iOS и под Android. В зависимости от переданного параметра, который я хочу получить в главной форме, будет открываться соответствующая стартовому параметру форма (Activity в Android).
      Пример: Из приложения "Папа" запустить приложение "Дочка", при этом сообщив "Помой посуду!". И чтобы приложение "Дочка" сообщила "Хорошо, папа" и открыло форму "Мойка посуды". ))) Как ее решить на разных платформах?
      В Windows это делается запуском приложения с соответствующими параметрами, в зависимости от их значения из проекта или главной формы открывается нужная форма.
      В Android для этого сделаны Intent фильтры. Только не понятно, как их обрабатывать в приложениях, написанных в Delphi. Вот как вы это сделали бы?
      И как такое делается в приложениях под iOS, естественно, тоже написанных на Delphi или С++.
       
      UPD 14-09-2016:
      Для Android решение найдено.
      Осталось найти решение для iOS.
    • Автор: Mazzay
      Моё приложение при запуске проверяет номер версии и при необходимости обновляется. Обновляется следующим образом: грузит с сервера и сохраняет на устройстве apk-пакет и запускает его на выполнение. Всё замечательно работало до перехода на Android 5.1. Загрузка пакета осуществляется в папку, возвращаемую GetSharedDownloadsPath. Запуск обновления производится следующим кодом:
      _di_JIntent Intent; _di_Jnet_Uri oUri; _di_JFile oPath; _di_JFile oFile; oPath = TJFile::JavaClass->init(StringToJString(fPath)); // fPath = System::Ioutils::TPath::GetSharedDownloadsPath(); oFile = TJFile::JavaClass->init(oPath, StringToJString(fFile)); // fFile = L"myapp.apk" oUri = TJnet_Uri::JavaClass->fromFile(oFile); Intent = TJIntent::JavaClass->init(TJIntent::JavaClass->ACTION_VIEW); Intent->setDataAndType(oUri, StringToJString(L"application/vnd.android.package-archive")); Intent->setFlags(TJIntent::JavaClass->FLAG_ACTIVITY_NEW_TASK); SharedActivity()->startActivity(Intent); Application->Terminate(); На Android 5.1 на выполнении этого кода получаю сообщение "... Access denied."
      Не помню, где, нарыл следующее:
      Как установить для файла режим Readable, чтобы его могло читать другое приложение?
       
      P.S. Внешней карты памяти на устройстве нет. Если её вставить, то работает, ибо с ней GetSharedDownloadsPath возвращает путь именно на внешней карте. Втыкание внешней карты пока рассматривается только как временный костыль, но он не очень интересен, так как устройств, на которых работает приложение 18 штук — не хочется покупать 18 карточек.
    • Автор: Esger Abdullayev
      Здравствуйте, друзья.Я прошу вас, пожалуйста, помогите.
      var Intent: JIntent; instagram:string; begin instagram:='https://instagram.com/user123';     Intent := TJIntent.Create;    Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);    Intent.setData(StrToJURI(instagram));    Intent.setPackage(StringToJString('com.instagram.android'));    SharedActivity.startActivity(Intent); end; Этот код не работает.Я хочу посмотреть на профиль Instagram пользователя
    • Автор: Rusland
      Пишут про некие intent, с помощью которых можно наладить "общение" между сервисом и приложением.
      Расскажите как это делается? Поделитесь кодом, чтобы в голове прояснилось
    • Автор: Belov.V.
      Как получить Intent, по которому приложение стало активным, после того, как до этого было свернутым?   Как известно это метод onNewIntent(), который FMX не поддерживает. Приложение запускается в режиме android:launchMode="singleTask".   Пожалуйста, не предлагайте решить задачу через ключи файла манифеста android:launchMode="singleTop" или android:launchMode="standard", которые устанавливают новый intent корневым. Там отдельные вопросы вне текущей темы.  
    • Автор: Belov.V.
      Приложение зарегистрировано для обработки файла по типу через файл манифеста (неявное намерение).
      <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="text/xml" /> </intent-filter> В списке выбора появляется. Как корректно в приложении получить содержание Intent (имя файла, путь)?
      Пробовал реализовать через подписку на получение сообщения на изменение статуса приложения: TMessageManager.DefaultManager.SubscribeToMessage(TApplicationEventMessage, DoApplicationEventChanged); При этом событие вызвавшее активацию определить можно, но вот как добраться до Intent не пойму:
      procedure TForm1.DoApplicationEventChanged(const Sender: TObject; const Message: TMessage); var Intent : JIntent; app_data : TApplicationEventData; begin if not(Message is TApplicationEventMessage) then exit; app_data := TApplicationEventMessage(Message).Value; case app_data.Event of FinishedLaunching, BecameActive : .... end; end; Что-то застрял я на этом. Как вообще добраться до открывшего приложение Intent?  Если реализовывать через IFMXApplicationEventService вопрос в итоге такой же.   Если есть описание реализации аналогичного функционала для iOS, буду благодарен.
  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу