Tumaso
-
Постов
331 -
Зарегистрирован
-
Посещение
-
Победитель дней
39
Активность репутации
-
Tumaso получил реакцию от qz5 в Долгая реакция переключения вкладок
Попробуй при создании приложения единоразово вызвать процедуру PreloadContent(TabControl2), где PreloadContent определена следующим образом:
procedure PreloadContent(const AControl: TControl); {$IF DEFINED(ANDROID) or DEFINED(IOS)} var I: Integer; {$ENDIF} begin {$IF DEFINED(ANDROID) or DEFINED(IOS)} if AControl is TStyledControl then TStyledControl(AControl).ApplyStyleLookup; if AControl.ControlsCount > 0 then for I := 0 to AControl.ControlsCount - 1 do PreloadContent(AControl.Controls[I]); {$ENDIF} end;
-
Tumaso получил реакцию от Anatoliy в Долгая реакция переключения вкладок
Попробуй при создании приложения единоразово вызвать процедуру PreloadContent(TabControl2), где PreloadContent определена следующим образом:
procedure PreloadContent(const AControl: TControl); {$IF DEFINED(ANDROID) or DEFINED(IOS)} var I: Integer; {$ENDIF} begin {$IF DEFINED(ANDROID) or DEFINED(IOS)} if AControl is TStyledControl then TStyledControl(AControl).ApplyStyleLookup; if AControl.ControlsCount > 0 then for I := 0 to AControl.ControlsCount - 1 do PreloadContent(AControl.Controls[I]); {$ENDIF} end;
-
Tumaso получил реакцию от Anatoliy в firemonkey android otg camera
а этот микроскоп определяется андроидом как стандартная камера? если да, то задача несложная. В rio вообще всё из коробки, в berlin нужен дополнительный модуль запроса разрешений (для андроид 6+), а с камерой можно работать из коробки
-
Tumaso отреагировална krapotkin в Загрузка настроек приложения из БД
правильный ответ - не делать так ))
нужно хранить настройки приложения в отдельном классе
тогда кроме самого класса нужны методы, которые
1) читают пишут его из ... файла, БД, интернета и т.д.
2) в нужный момент (обычно чтобы изобразить форму и заполнить св-ва компонентов или еще для чего угодно) использовать эти настройки
3) вытекает из 2) сохранять в нужный момент новые значения в переменную, где лежат настройки
для хранения настроек отлично подходит JSON. Т.к. он может иметь иерархическую структуру, что очень удобно. Его и хранить в БД.
Можно и прямо поля, строки и все такое, но все равно, собирать их нужно в некое хранилище в программе.
Пример разбирал тут http://www.cyberforum.ru/blogs/469693/blog4883.html
-
-
Tumaso отреагировална krapotkin в StatusBar Color
Запустил код по ссылке на delphi 10.3.2, android 8.1 Xiaomi redmi 5 plus
В моем случае выяснилось, что поведение зависит от состояния Mainform.Borderstyle
Если none - ведет себя как Fullscreen, статусбар прячется
Дополнено!
Чистый проект на 10.3.2 сам добавляет в Deployment файл styles-v21.xml
Его нужно отключить!
иначе будет только вариант Fullscreen (он же Borderstyle=none) когда статусбар скрыт и выезжает полупрозрачный, либо обычный неокрашенный статаусбар.
Если без него впоследствии что-то не взлетит, можно так же как с основным styles.xml добавить в deployment свой, модифицированный, со строками
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">false</item>
У меня после отключения окрашивание статусбара работает корректно.
-
Tumaso отреагировална Barbanel в Установить две версии программы на один Android-планшет
Нужно в настройках проекта изменить имя пакета.
В 10.3 это в Project -> Options -> Application -> Version Info -> Key: ProgramID
-
Tumaso отреагировална qz5 в Как можно обновиться в Google Play после 1 августа
Короче уточнил: бета-версия 10.3.3 будет называться Sugarloaf, она выйдет до конца этого месяца, там будет 64-битный компилятор под Андроид, но так и не понял по поводу - дадут ли "коммунякам" или нет
так в ближайшие 7 дней ждем Sugarloaf
-
Tumaso отреагировална krapotkin в LiveBinding на ListView и FireDAC в отдельном потоке без "заморозки" интерфейса на Андроид?
processmessages на андроид зачем???
почему нельзя в потоке открыть и зафетчить записи, а уже потом добавить binding
-
Tumaso получил реакцию от Ingalime в Андроид 9 и Интернет
Манифест можно править руками, в любом текстовом редакторе
-
Tumaso получил реакцию от Ingalime в Андроид 9 и Интернет
@Татьяна
внутри среды манифест не поправить. Можно только изменить малую часть параметров, и не более того
-
Tumaso получил реакцию от Ingalime в Как можно обновиться в Google Play после 1 августа
Лично я надеюсь, что к тому времени у нас будет 64х битная компиляция под андроид, и нынешняя проблема будет неактуальной
-
Tumaso отреагировална sinuke в Как можно обновиться в Google Play после 1 августа
Получил продление для приложений
-
-
Tumaso отреагировална #WAMACO в Helper для TBitmap - асинхронная загрузка картинки из URL
странное заключение.... поясните пожалуйста....
-
Tumaso отреагировална dnekrasov в Исправили или нет? (Delphi 10.3.2)
@Сергей Рыжков , @CyberStorm
Почитайте про новое в Delphi 10.3 Rio - статей и видео на эту тему куча.
-
Tumaso отреагировална Ingalime в переход к x64?
https://community.idera.com/developer-tools/b/blog/posts/google-play-store-android-32-bit-extension-for-delphi-and-c-builder-customers
-
Tumaso отреагировална qz5 в переход к x64?
Нашли способ, чтобы Плеймаркет не ругался на отсутствие 64-битности, вот оно: http://www.fmxexpress.com/learn-how-to-deploy-delphi-10-3-rio-android-apps-to-google-play-with-android-64-bit-requirements/
Но правда есть проблема: после этого не даст установить такое приложение на Андроид 9 и 10.
-
Tumaso отреагировална Barbanel в Data grid на android
Посмотрел TListView. Все еще проще.
Идите в инспекторе в свойство ItemAppearance и там можно настроить высоту хедера и футера.
Вот вам скриншот (Ааааа в данном случае - хедер):
-
Tumaso получил реакцию от Ingalime в переход к x64?
в чем проблема то? до 1 августа можете спокойно выкладывать, а к тому времени думаю, что Эмба решит проблему
-
Tumaso отреагировална Dmitry_4501 в [РЕШЕНО]: Как отловить кнопки пульта ДУ
В общем удалось решить проблему с кнопками пульта. Теперь приложение распознает все кнопки с пульта. Если кому-то нужно, прикрепил архив. (Delphi 10.3.1 Rio)
fmx_androidkey_fix.zip
-
Tumaso получил реакцию от Barbanel в Библиотека компонентов Alcinoe для Delphi
@aleksandrguru сами то использовали alcinoe? я пробовал использовать.
главные минусы - автор библиотеки не утруждает себя ответами на возникающие вопросы, многие вещи буферизации изображения и обновления этого буфера работают непонятно как.
версию для Rio я не пробовал, честно говоря уже нет желания дальше чтото делать на этой библиотеке, но вот в Tokyo при добавлении TMapView работа alcinoe ломается, изображения на экране обновляется по непонятным правилам (не спасает например прямой вызов перестроения буфера). В TALImage невозможно вручную занести изображения, только либо из файла, либо из ресурса. И так далее.
-
Tumaso получил реакцию от Anatoliy в Библиотека компонентов Alcinoe для Delphi
@aleksandrguru сами то использовали alcinoe? я пробовал использовать.
главные минусы - автор библиотеки не утруждает себя ответами на возникающие вопросы, многие вещи буферизации изображения и обновления этого буфера работают непонятно как.
версию для Rio я не пробовал, честно говоря уже нет желания дальше чтото делать на этой библиотеке, но вот в Tokyo при добавлении TMapView работа alcinoe ломается, изображения на экране обновляется по непонятным правилам (не спасает например прямой вызов перестроения буфера). В TALImage невозможно вручную занести изображения, только либо из файла, либо из ресурса. И так далее.
-
Tumaso получил реакцию от Anatoliy в TIDTCPClient, TIDTCPServer
Чтобы приложение оставалось активным в фоновом режиме (я про андроид), приложение должно отображать постоянное уведомление.
Сам такое уведомление еще не реализовывал, поэтому технической реализации не подскажу (пока по крайней мере)
-
Tumaso отреагировална Barbanel в Настройка Android SDK
Хех, будет весело ?
Android NDK (native development kit) – это набор инструментов, которые позволяют реализовать часть вашего приложения используя такие языки как С/С++.
Для того чтобы среда могла использовать эти утилиты при необходимости. Чуть больше про NDK можно прочитать здесь.
Каждый АПИ-левел содержит новые возможности или исправления, отсутствующие в предыдущем АПИ.
Какой именно АПИ нужен вам - можете решать сами.
Различают минимальный АПИ (грубо говоря, это минимальная версия Андроида на котором программа может запуститься, но не обязательно будет работать в полном объеме)
и целевой АПИ (версия Андроида, для которой собсно программа и предназначена).
Как правило раньше хватало минимального АПИ 14, а целевой - 22 (если ине не изменяет память, не ручаюсь что цифры точные).
Сейчас эти цифры изменились, минимальный если я не ошибаюсь 22 или 24, целевой - от 26 и выше. Связано это с тем, что Гугл закручивает гайки в плане безопасности (или просто загручивает гайки, потому что тупо может), и объявляет старые версии устаревшими и неподдерживаемыми.
Может да, а может и нет. Смотря какие фичи из сдк используются.
Но вообще, чаще всего да, могут.
Добро пожаловать в новый чудный мир! ))))))
На самом деле все работает, просто вы кое-что не сделали.
Указывать разрешения в настройках проекта более недостаточно. Нужно, да, но теперь этого мало.
Нужно запрашивать эти разрешения у пользователя в процессе работы программы, динамически. Более того, программа должна корректно отработать, даже если пользователь не выдал вам эти разрешения.
Т.е. если вы хотите доступ к камере чтобы сфоткать что-то, вы спрашиваете пользователя, что программе нужна камера. Пользователь может и отказать, вы проверяете его ответ и в случае отказа делаете вид что вам не нужна камера, а не крашитесь как раньше)))
Точно так же с другими разрешениями. Если программе в принципе необходимо разрешение, и без него она теряет свой смысл - то сообщать об этом пользователю.
Тем с запросом разрешений на этом форуме - завались, есть даже примеры в самой Студии. Это на самом деле несложно.