Перейти к содержанию

slav_z

Пользователи
  • Активность

    168
  • Зарегистрирован

  • Посещение

  • Победитель дней

    19

Активность репутации

  1. Like
    slav_z получил репутацию от Ingalime в Переход 10.3.3 -> 10.4.1   
    Переход с Delphi 10.3.3 на версию 10.4.1 вызвало проблемы во всех ОС без исключения.
    Начну с простых случаев:
    Linux (Ubuntu)
    При компиляции вылезла ошибка: ld-linux.exe: error: cannot find -lgcc_s
    Помогла установка (с последующим обновлением SDK) на ubuntu: sudo apt install gcc
    При компиляции вылезла ошибка: ld-linux.exe: error: cannot find -lz
    Помогла установка (с последующим обновлением SDK) на ubuntu: sudo apt install zlib1g-dev
    iOS
    Приложение при запуске стало занимать 2/3 экрана по высоте (в новом приложении хелловорд все было хорошо).
    Для решения проблемы надо добавить следующую строку в "старый"  файл info.plist.TemplateiOS.xml

    Windows
    В приведенном ниже коде перестал освобождаться интерфейс Response. При выходе программа сообщала о не освобожденных объектах (ReportMemoryLeaksOnShutdown:=True)

    Вот код (помечена строка которую пришлось добавить для решения проблемы... сломали подсчет ссылок для интерфейсов, а это уже плохо...):

    macOS
    При деплое вылезло следующее:
    [PAClient Error] Error: E0264 Unable to execute '"/usr/bin/codesign" --entitlements "/Users/macbookpro/PAServer/...../Contents/xxxx.entitlements" -s "-" -f "/Users/macbookpro/PAServer/scratch-dir/xxxx.app"' (Error 1)
    [PAClient Error] Error: E0264 Failed to parse entitlements: AMFIUnserializeXML: duplicate dictionary key near line 19
    Не знаю почему и как, но помогло убрать галочку здесь:

    Android
    Самые большие проблемы. В двух словах: ошибка при компиляции F2084 Internal Error: URW1237 или G14486 при использовании обобщенных классов (тот же код для других OC компилируется без проблем).
    Позже покажу пример кода и как получилось уговорить компилятор.
     
     
  2. Thanks
    slav_z получил репутацию от Android в Delphi 10.3 (targetSDK=28) и Android 11   
    да (после патча System.o конечно)

  3. Like
    slav_z получил репутацию от Ingalime в XSuperObject   
    все сторонние библиотеки рано или поздно превращаются в "камень в ботинке"... вопрос только во времени когда это случится...  и если написано уже много кода, то переписывание и тестирование заново всего - это очень неприятная ситуация... я бы не стал самому себе на будущее подкладывать такую свинью... только когда стандартными компонентами не обойтись никак.. или время жизни проекта 3-4 года...
  4. Like
    slav_z получил репутацию от gonzales в закодировать строку в UTF8 для передачи в GET запросе   
    а..  вот еще что: THTTPClient сам кодирует строку запроса, без всякой дополнительной фигни... очень хороший объект... реализованный просто замечательно...
      Client:=THTTPClient.Create;
      var Response:=Client.Get('http://fire-monkey.ru/topic/6993-закодировать-строку-в-utf8-для-передачи-в-get-запросе/#comment-40498');
      if Response.StatusCode=200 then
        ...
      Client.Free;
     
  5. Like
    slav_z получил репутацию от gonzales в закодировать строку в UTF8 для передачи в GET запросе   
    S:=TNetEncoding.URL.EncodeQuery('http://fire-monkey.ru/topic/6993-закодировать-строку-в-utf8');
    ...и вам вполне подойдет THTTPClient для любых запросов...
  6. Like
    slav_z получил репутацию от Сергей Сергеев в Запуск внешнего браузера на IOS   
    uses
      iOSapi.Foundation, FMX.Helpers.iOS, iOSapi.UIKit, Macapi.CoreFoundation,
      Macapi.Helpers;
    procedure OpenURL(const URL: string);
    var _NSUrl: NSURL;
    begin
      _NSUrl:=TNSUrl.Wrap(TNSUrl.OCClass.URLWithString(NSStr(URL)));
      SharedApplication.openUrl(_NSUrl);
    end;
     
  7. Thanks
    slav_z получил репутацию от Дмитрий Потапов в Как получить иконку файла или папки?   
    вообще, чтобы получить HICON, достаточно только этого:

  8. Like
    slav_z получил репутацию от Tumaso в Расположение нажатого элемента управления по отношению к экрану   
    не ClientToScreen а LocalToScreen... оно есть у фрейма...
    Пример:
    LocalToScreen(TPointF.Zero) - левый верхний угол фрейма в координатах экрана,
    LocalToAbsolute(TPointF.Zero) - левый верхний угол фрейма в координатах формы.
     
  9. Like
    slav_z получил репутацию от Ingalime в Android 11   
    у меня sdk реально 29-тое... а не просто target изменил и все...

  10. Like
    slav_z получил репутацию от Ingalime в Toast message   
    uses здесь лишние есть:
    uses
      System.SysUtils,
      System.IOUtils,
      System.Math,
      System.Messaging,
      FMX.Platform,
      FMX.Platform.Android,
      Androidapi.Helpers,
      Androidapi.JNI.Os,
      Androidapi.JNI.GraphicsContentViewText,
      Androidapi.JNI.JavaTypes,
      Androidapi.JNI.Webkit,
      Androidapi.JNI.Net,
      Androidapi.JNIBridge,
      Androidapi.JNI.App,
      Androidapi.JNI.Support,
      Androidapi.JNI.Provider,
      Androidapi.JNI.Widget,
      Androidapi.JNI.Embarcadero;
    procedure ShowToast(const Text: string);
    begin
      TJToast.JavaClass.makeText(SharedActivityContext,
        StrToJCharSequence(Text),TJToast.JavaClass.LENGTH_LONG).show;
    end;
  11. Thanks
    slav_z выдал репутацию brunnengi в Android 11   
    Рад что помогло.
    Да, в 10.4 там всё норм. Потому и написал что фикс тока для 10.3.3
  12. Thanks
    slav_z выдал репутацию brunnengi в Android 11   
    Да, оно. Это приложение собиралось на Delphi 10.3.3 после фикса. Фикс должен был решить проблему именно с крашем на Android 10. Я предположил что и на Android 11 тоже попрет.
    Ниже ссылка на пост, там дается ссылку на форум fgx где есть руководство как сделать fix среды Delphi 10.3.3
     
  13. Like
    slav_z получил репутацию от brunnengi в Android 11   
    да..  вижу...  ща попробую... заранее СПАСИБО!!!!! потом еще раз спасибо напишу когда получится....
  14. Thanks
    slav_z получил репутацию от Ingalime в Посоветуйте компонет   
    Вариантов много, но самый простой - использовать TListBox.
    FramesList.zip
  15. Like
    slav_z получил репутацию от dnekrasov в Symbol 'Release' is deprecated   
    Release уже давно объявлен как deprecated.
    Release позволяет выполнить отложенное удаления объекта (удалить, но не прям сейчас). Если это вам действительно нужно (иногда позволяет избежать некоторых ошибок), то просто повторите его код. Но пока его окончательно не убрали, лучше пользоваться существующим методом. Ругается и ругается - бог с ним. Если надо просто удалить объект, то Free, если с обнулением ссылки то FreeAndNil или Free + присвоить nil в коде (как у вас).

  16. Like
    slav_z получил репутацию от Android в Symbol 'Release' is deprecated   
    Release уже давно объявлен как deprecated.
    Release позволяет выполнить отложенное удаления объекта (удалить, но не прям сейчас). Если это вам действительно нужно (иногда позволяет избежать некоторых ошибок), то просто повторите его код. Но пока его окончательно не убрали, лучше пользоваться существующим методом. Ругается и ругается - бог с ним. Если надо просто удалить объект, то Free, если с обнулением ссылки то FreeAndNil или Free + присвоить nil в коде (как у вас).

  17. Like
    slav_z получил репутацию от Ingalime в Symbol 'Release' is deprecated   
    Release уже давно объявлен как deprecated.
    Release позволяет выполнить отложенное удаления объекта (удалить, но не прям сейчас). Если это вам действительно нужно (иногда позволяет избежать некоторых ошибок), то просто повторите его код. Но пока его окончательно не убрали, лучше пользоваться существующим методом. Ругается и ругается - бог с ним. Если надо просто удалить объект, то Free, если с обнулением ссылки то FreeAndNil или Free + присвоить nil в коде (как у вас).

  18. Like
    slav_z получил репутацию от Ingalime в прозрачность модального окна в 10.3   
    ну нельзя так...
    кстати, там есть пояснение (ниже), но работает... поэтому это на ваш риск... возможно не на всех телефонах будет работать...

  19. Thanks
    slav_z получил репутацию от gonzales в прозрачность модального окна в 10.3   
    если вы достаточно смелый, то можете внести следующее изменение в исходники* дельфи: (тогда на андроиде будет работать прозрачность формы), но проблему можно решить просто используя фреймы.

    *копируете этот файл в папку проекта и делаете изменения.
  20. Like
    slav_z получил репутацию от Ingalime в прозрачность модального окна в 10.3   
    если вы достаточно смелый, то можете внести следующее изменение в исходники* дельфи: (тогда на андроиде будет работать прозрачность формы), но проблему можно решить просто используя фреймы.

    *копируете этот файл в папку проекта и делаете изменения.
  21. Like
    slav_z получил репутацию от Barbanel в Контора ищет FMX разработчика   
    блин, рассмотрите мою кандидатуру....
  22. Like
    slav_z получил репутацию от dnekrasov в Разработка кросплатформенных приложений в одном проекте   
    ну как так то? условная компиляция! посмотрите в исходных кодах дельфи... там куча примеров...  КУЧА!!!

     
  23. Like
    slav_z получил репутацию от Евгений Корепов в Разработка кросплатформенных приложений в одном проекте   
    ну как так то? условная компиляция! посмотрите в исходных кодах дельфи... там куча примеров...  КУЧА!!!

     
  24. Like
    slav_z получил репутацию от OnePeople в Разработка кросплатформенных приложений в одном проекте   
    ну как так то? условная компиляция! посмотрите в исходных кодах дельфи... там куча примеров...  КУЧА!!!

     
  25. Like
    slav_z получил репутацию от Tumaso в Разработка кросплатформенных приложений в одном проекте   
    ну как так то? условная компиляция! посмотрите в исходных кодах дельфи... там куча примеров...  КУЧА!!!

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