Перейти к содержанию
Fire Monkey от А до Я
  1. Общие вопросы

    1. 512
      поста
    2. 1,5т
      постов
    3. 927
      постов
    4. Базы данных и REST

      Работа с базами данных и с REST из FireMonkey

      1,6т
      постов
    5. 10,1т
      постов
    6. Положение, размеры, выравнивание

      Положение контролов, размеры, способы выравнивания, абсолютные, локальные и экранные координаты

      434
      поста
    7. Работа с текстом

      Текстовые настройки, шрифты, отображение

      424
      поста
    8. Приложение и формы

      Настройки приложения и работа с формами

      1,3т
      постов
    9. Отладка

      Вопросы отладки и логирования delphi приложений. Поиск ошибок.

      508
      постов
    10. Развертывание приложений

      Deployment Manager, копирование своих файлов на устройство при установке приложения, подготовка к публикации, распространение.

      661
      пост
    11. 1,1т
      поста
    12. Общая информация о TControl

      Общая информация о TControl, на основе которого строятся все остальные визуальные компоненты FireMonkey

      74
      поста
    13. 304
      поста
    14. Прочие вопросы

      Если нет соответствующего раздела форума, то сюда публикуем свой вопрос, затем тема перейдет в нужный раздел форума.

      3,1т
      поста
  2. Вопросы по платформам

    1. 6,9т
      пост
    2. 1,8т
      постов
    3. OSX

      195
      постов
    4. 713
      поста
    5. 6
      постов
    6. 88
      постов
  3. Вопросы по использованию RAD Studio

    1. Лицензирование

      Вопросы связанные с редакциями RAD Studio и лицензированием

      156
      постов
    2. 126
      постов
    3. 13
      постов
    4. 24
      поста
    5. 303
      поста
  4. Обучение

    1. 37
      постов
    2. 150
      постов
      • Сообщений пока нет
  5. Поиск специалистов по FireMonkey

    1. Консультации

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

      616
      постов
    2. Ищу подрядчика

      В этом разделе заказчики ищут подрядчиков для разовых/проектных работ на FireMonkey

      173
      поста
  6. Дополнительные ресурсы по FireMonkey

    1. Сторонние компоненты

      Раздел для публикации существующих компонентов для FireMonkey

      887
      постов
    2. Приложения, написанные с использованием FireMonkey

      Подборка ссылок на приложения, написанные с использование FireMonkey и RAD Studio

      330
      постов
    3. Примеры

      Подборка ссылок на официальные примеры

      9
      постов
    4. Руководства

      Книги, брошюры по FireMonkey

      67
      постов
    5. Шаблоны

      Шаблонные проекты

      160
      постов
    6. Статьи и заметки

      Публикация ссылок на интересные стать о Delphi и FireMonkey. Каждый пользователь может поделиться здесь своими ссылками.

      403
      поста
    7. Информация о версиях RAD Studio

      Информация о новых возможностях, появившихся в каждый версиях RAD Studio. А так же исправлениях и улучшениях

      812
      поста
    8. 536
      постов
  7. Организация работы данного форума

    1. 1
      пост
    2. Нарушения правил форума

      Сюда попадают темы, не отвечающие правилам форума

      23
      поста
    3. 147
      постов
    4. 100
      постов
    5. Функции форума

      Инструкции по использованию функций форума и оповещение о новых функциях

      19
      постов
  • Статистика пользователей

    5 000
    Пользователей
    1 611
    Максимум онлайн
    shpuntic
    Новый пользователь
    shpuntic
    Регистрация
  • Кто в онлайне   2 пользователя, 0 анонимных, 7 гостей (Посмотреть всех)

  • Последние сообщения

    • if (focusChange=TJaudioManager.JavaClass.AUDIOFOCUS_LOSS) or (focusChange=TJaudioManager.JavaClass.AUDIOFOCUS_LOSS_TRANSIENT)  
    • Для лайков и хейтов. Все у кого получилось отписывайтесь что прилинковали и выкладывайте хедеры  
    • Линковка Kotlin (Котлин) библиотек в Delphi, как делаю: Хедеры линкуемых библиотек обычно громадны описанием всех типов... Я обычно делаю свой jar на java в нем линкую зависимости и наружу для дельфи оставляю один объект с простыми функциями. Хедер дельфи получается компактным и понятным: package com.MyCompany.evotor; public interface J2DCallback { void Log(String str); String Trans(String str); String GetValue(String name); void SetValue(String name, String value); Activity GetActivity(); Context GetContext(); } public class FiscalCoreConnection { final private Global Instance; public FiscalCoreConnection(J2DCallback aj2d) throws NullPointerException { Instance = new Global(aj2d); } public String SendJSON(String JSON){ try{ return Instance.SendJson(JSON); } catch (Exception e) { return FiscalCoreException.MakeJson(e); } } } type J2DCallbackClass = interface(IJavaClass) ['{856654D5-7939-44DF-ACD5-E2EF8C6D3AA4}'] end; [JavaSignature('com/MyCompany/evotor/J2DCallback')] J2DCallbackIntf = interface(IJavaInstance) ['{025B14E9-C041-4105-9E85-83CC127CC340}'] procedure Log(str:JString); cdecl; function Trans(str:JString):JString; cdecl; function GetValue(name:JString):JString; cdecl; procedure SetValue(name:JString; value:JString); cdecl; function GetActivity():JActivity; cdecl; function GetContext():JContext; cdecl; end; TJ2DCallbackImp = class(TJavaGenericImport<J2DCallbackClass, J2DCallbackIntf>) end; [JavaSignature('com/MyCompany/evotor/FiscalCoreConnection')] JFiscalCoreConnection = interface(JObject) ['{5797747D-D61D-4EF6-94F7-5E8994545CC2}'] function SendJSON(JSON:JString):JString; cdecl; end; JFiscalCoreConnectionClass = interface(JObjectClass) ['{81782882-DFCF-4FA9-BD37-02CCCF2409EA}'] function init(j2d : J2DCallbackIntf) : JFiscalCoreConnection; cdecl; end; TJFiscalCoreConnection = class(TJavaGenericImport<JFiscalCoreConnectionClass, JFiscalCoreConnection>) end; TJ2DCallback = class(TJavaLocal, J2DCallbackIntf) public procedure Log(str:JString); cdecl; function Trans(str:JString):JString; cdecl; function GetValue(name:JString):JString; cdecl; procedure SetValue(name:JString; value:JString); cdecl; function GetActivity():JActivity; cdecl; function GetContext():JContext; cdecl; end; Все зависимости в build.gradle: dependencies { implementation 'com.github.evotor:integration-library:v0.4.50' implementation 'com.google.zxing:core:3.4.0' } В Дереве External Libraries забираем jarы зависимостей ПКМ Show in Explorer. Копируем в папку своего проекта и даем осознанное имя. Там же забираем kotlin-stdlib ПКМ Show in Explorer. Копируем в папку своего проекта и даем осознанное имя. Но в kotlin-stdlib.jar есть "лишний" файл kotlin-stdlib-1.5.10.jar\META-INF\versions\9\module-info.class Открываем архиватором и удаляем файл или всю папку versions Почти все готово... Но котлин еще и посыпан сахаром и не хочет Дельфей dexится, хочет -min-sdk-version=26 Поможем Delphi: Ищем CodeGear.Common.Targets, у меня он в "C:\Program Files (x86)\Embarcadero\Studio\21.0\bin"\ Ищем в нем --output, и перед ним вставим все про sdk. У меня получилось так:     <DxCmd>PATH $(JDKPath)\bin;$(PATH); %26 set JAVA_HOME=$(JDKPath)%26 "$(JavaDxPath)" --dex --min-sdk-version=26 --output=</DxCmd> Далее цепляем все jar в проект Либа производителя, Либа своя обертка, и котлин Иии собираем! Если есть еще зависимости делаем аналогично: находим jar, выпиливаем META-INF\versions\9\module-info.class, линкуем в проект и собираем... Не все зависимости используются и нужны, поэтому добавляем поштучно до тех пор пока не заведется.
    • спасибо за наводку, но вот действительно в UniDac нет таких компонентов. Нашла, что есть TLiteUtils.RegisterFunction, где последним параметром идет TLiteFunction, но как ее правильно использовать я пока не могу понять(((
    • Не совсем понял (вверху в постах), какое отношение имеют к кириллице символы  ü, ö, ä . Я использую liteDac, скорее всего в UniDac так же: Я кидаю на форму компонент TLiteUserFunction , в его событии OnExecute создаю следующий код: procedure TDataModule2.LiteUserFunc_upcaseExecute(Sender: TObject;   Params: TDAParams; var ResultValue: Variant); begin  ResultValue := AnsiUpperCase(TLiteUserFunction(Sender).Params.ParamByName('Value').AsString); end; А далее прямо в  SQL коде, вставляю эту внешнюю функцию. Вот как пример: select [mnn] from [vrem_for_grupp] where LiteUserFunc_upcase([mnn]) = ('''+trim(mn.ToUpper)+  ''') И получается, параметры, которые передаю во внутрь я перевожу в верхний регистр прямо при передачи (в примере это mn.toUpper ), а внутри  SQL, эти параметры в верхний регистр переводит внутренняя(внешняя) функция, в данном случае LiteUserFunc_upcase.   
    • Спасибо, теперь все компилируется. Однако: else if res = TJAudioManager.JavaClass.AUDIOFOCUS_REQUEST_GRANTED then begin //фокус получен //LogCAAdd('AUDIOFOCUS_REQUEST_GRANTED'); ShowMessage('AUDIOFOCUS_REQUEST_GRANTED'); end else if res = TJAudioManager.JavaClass.AUDIOFOCUS_REQUEST_FAILED then // отказано //LogCAAdd('AUDIOFOCUS_REQUEST_FAILED'); ShowMessage('AUDIOFOCUS_REQUEST_FAILED'); end Вижу при нажатии на кнопку проигрывания сообщение AUDIOFOCUS_REQUEST_GRANTED Все нормально. Делаю звонок и поднимаю трубку. Музыку все равно слышно. Что-то мною упущено...  if (focusChange=TJaudioManager.JavaClass.AUDIOFOCUS_LOSS) then // фокус потерян begin // music stop // действия если фокус потерян //код кнопки STOP OverflowMenu.Visible := False; Text1.Text := ''; FloatAnimation1.Enabled := False; Viewport3D1.Visible := False; AniIndicator1.Enabled := FALSE; AniIndicator1.Visible := FALSE; BASS_ChannelStop(str); BASS_StreamFree(str); ShowMessage('STOP OK');//тест - не вижу когда возвращаюсь в приложение положив трубку end;  
    • Кто-нибудь пробовал в настоящее время опубликовать новое приложение на Google Play? Дело в том, что там сейчас принимаются новые приложения только с targetSDK=30. Если вручную проставить 30 в манифесте, скомпилировать приложение (у меня Delphi 10.4.1, Android SDK 25) и запустить apk файл на телефоне (у меня Андроид 11), то приложение даже не устанавливается! (не говоря уже о запуске приложения) Если оставить 29 в манифесте, то всё компилится, устанавливается, запускается и работает на этом телефоне, но тогда Гугл Плэй не принимает. Засада какая-то....
    • перенесите {$R *.fmx} uses UnitDonate; сразу после implementation
  • Последние темы

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