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

qz5

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

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

  • Посещение

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

    11

qz5 стал победителем дня 31 марта

qz5 имел наиболее популярный контент!

Информация о qz5

  • Звание
    Продвинутый пользователь

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

  1. Для того, чтобы поддержиывать будущее требование ко всем приложениям иметь SDK 30 надо ждать выхода Делфи 10.4 Community Edition Или самому реализовать вот это API: https://developer.android.com/training/data-storage/shared/media#direct-file-paths А пока добавить в манифест строку requestLegacyExternalStorage
  2. Видимо это будет Вам полезно (я писал в другой теме):
  3. Есть еще например Kotlin, Flutter, Xamarin. Не думали в их сторону посмотреть?
  4. Вот еще почитать на эту тему: https://developer.android.com/training/data-storage/use-cases и https://developer.android.com/about/versions/11/privacy/storage Так что после Target SDK 30 вообще старый код работать не будет... Нужно будет переписывать код работы с файлами.
  5. Вообще в других фреймворках для этого используют например Lottie. Он позволяет сделать векторные, красивые, даже анимированные элементы, но в своем JSON формате. Я для Вас даже нашел гитхаб, в котором кажется реализована поддержка его на делфи: https://github.com/HashLoad/lottie-player Попробуйте перевести SVG в Lottie и потом расскажите. Так, посмотрел исходники, оказывается он показывает анимацию через показ... TWebBrowser, в котором JS-скрипт показывает Lottie. Грустно. Есть реализацию Lottie под Андроид, но оно для Java: https://github.com/airbnb/lottie-android Подключить в Delphi можно, но сложно. Для этого надо сделать по шагам, да и просто уметь: 1. подключить AAR-библиотеки (я пока не умею) 2. сделать обертку java2op (это относительно просто) 3. показать View с анимацией внутри Delphi. Это я не умею, но на этом форуме есть примеры, например подключение View Андроид-камеры: Как я понимаю, нужно создать нативный Layout через TJNativeLayout.JavaClass.init, создать и в нем расположить View c Lottie, потом его в определенном месте окна размещать. Но с нативными View тоже много проблем. Например нельзя обычные FM-элементы размещать частично поверх них или полупрозрачно например.
  6. Про CEF не все знают, нужно было написать про него конкретно, а не отправлять по https://chromedriver.chromium.org/mobile-emulation
  7. Есть еще вариант использовать CEF4Delphi - https://github.com/salvadordf/CEF4Delphi
  8. Если 10-ая винда, то можно через TEdgeBrowser Edge поддерживает жесты, но работает это всё только на 10-ке
  9. Пробежался. Да, можно обычным Webview управлять, как Вы делали через Селениум. Селениум у Вас просто удобный инструмент для доступа к режиму удаленного управления браузера. Можно и без него, например через Chrome DevTools. Включить то программным образом режим отладки можно через команду setWebContentsDebuggingEnabled(true), но дальше начинаются сложности, остальное видимо возможно только, если писать на Java. Дальше я просто не знаю. Там уже темный лес, но в любом случае лезьте туда. только если знаете Java. Т.е. режим удаленной отладки, который использует Селениум, и так уже встроен в Webview (веб-браузер, который встраивается в приложения), но предполагается, что его используют не из самой программы, а удаленно. Либо через Chrome DevTools, либо через такие штуки как Селениум. p.s. это мои измышления, может реальность и другая. Я еще порою в этом направлении, но сомневаюсь, что смогу найти быстрое решение... Так что пока предлагаю переписать все на JS и запускать через EvaluateJavaScript. Там тоже есть свои подводные камни (например получение результата из скрипта), но это по-крайней мере можно сделать в Delphi.
  10. У стандартного Webview есть процедура включения удаленного управления, через который Селениум работает. Называется setWebContentsDebuggingEnabled. В Делфи реализовано, но я не пробовал его использовать. Сейчас пороюсь, возможно ли.
  11. ИМХО всё это можно сделать через выполнение js-скриптов на Webview через процедуру EvaluateJavaScript С Webview есть проблема с получением результата выполнения js-скрипта назад в приложение, но тоже можно, но через addJavascriptInterface, хотя и заморочисто. Я пробовал делать - плюнул, не было большой необходимости получения результата. Так что если просто выполнить скрипт, без проверки результата и на одной странице, без перехода между страницами, то evaluateJavascript хватит. Если надо отслеживать логику с перемещениями по сайту, проверять что введено в каком-то поле, то с этим проблемы.
  12. А Вы хотите с компьютера управлять, то есть делать тестирование или из самого (своего) приложения? В первом случае - Appium нужен, во втором можно и через выполнение скриптов. Укажите, что Вы хотите точнее.
  13. Может быть, Вы имеете ввиду Appium?
  14. Я использую немного обычный Webview Про Селениум знаю, но для чего бы его использовать в Firemonkey? Может быть, если мне нужно будет, то попробую примастрячить (я уже кое какие сторонние от Firemonkey штуки подключил в Андроид, может быть и это сделаю). Я знаю, что его используют например тестировщики, но что оно дает разработчикам программ?
×
×
  • Создать...