Перейти к содержанию
Fire Monkey от А до Я

konung

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

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

  • Посещение

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

    1

Сообщения, опубликованные konung

  1. SerhioUser

     

    А что если попробовать вариант работы двух прог (сам на андройде такое не пробовал. просто как предложение)? Одна эдакий апдейтер/лаунчер, другая - сама прога. Взаимно настроить у них в манифесте доступность друг к другу. Апдейтер/Лаунчер проверяет обновления, сливает чегось по необходимости. Обновляет (не знаю можно ль так нагло в андройде) либы и прочее основной проги. Запускает основную прогу (условно) с каким нить параметром и закрывается. Основная прога при обычном запуске - запускает апдейтер/лаунчер и закрывается. Может самая элегантная схема, но вполне рабочая... Для винды ;) . В рамках андройда, повторюсь, - не пробовал.

     

    ...

     

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

  2. Brovin Yaroslav

     

    Согласен. Такого рода вещи не стоит юзать без крайне необходимости. И естественно - если и использовать то после тестирования.

     

    Kitty

     

    Что до параметра, то вроде как вот он (не проверял, ессно, и не могу сказать можно ль его поставить в самом BDS. скорее всего - ручками в манифесте):

    в корневом элементе (манифеста) <application, атрибут android:persistent="false|true". По умолчанию - false. При true - "приложение должно работать во что бы то ни стало. Актуально для небольшого круга системных приложений." 

  3. Если не ошибаюсь (хотя не исключено, что с чем то путаю) - был в Uses Permissions параметр, который определяет прогу как "невыгружаемую" для android. Пользоваться сим параметром Google не реккомендует, но вроде как он есть, и как вариант для данной ситуации - воспользоваться им можно. Параметр - честно говоря - запамятовал. Если найду - маякну. А может кто раньше подскажет.

  4. "Нарывался" на некоторые подобные косяки при игре с параметрами (при пробах со splash) 

    android:windowNoTitle 
    android:windowFullscreen
    

    Прога после поворотов не всегда адекватно реагировала, позиционировала контролы и т.п. Пока отложил эти

    украшательства и не разобрался в чем дело, но думал тут об этом как-нить написать. Может и у вас что то подобное мешает жить?

  5. Уже не раз поднимались холивары по поводу размера итоговой библиотеки и apk файла в частности.

     

    Вопрос такой - возможны ли такие варианты:

    • собрать проект "выкинув" ту графику, которая мне заведомо не нужна (насколько я понимаю - по умолчанию там сидят наборы дефолтные стилей, картинки кнопок и т.п.)? 
    • собрать проект эдак раздельно. Поясню. Под виндой можно скомпилить только код приложения. И потом - для его работы таскать за собой "шлейф" bpl-ек, кои будут нужны для работы проекта. С одной стороны это мягко говоря не удобно. С другой - если это корпоративное приложение - вполне можно "предустановить" этот набор bpl-ек и потом обновлять лишь небольшой бинарник (баблиотеку, ресурсы и т.п.) - что заметно практичнее. Реально сделать что-то подобное в рамках Android?
  6. Чуток добавлю (тоже интересовался), но сразу оговорюсь - ещё не пробовал:

     

    От тут про отладку по wifi несколько ссылок (android вообще, не к BDS привязано):

    http://vadimrm.livejournal.com/179949.html

     

    И в частности комрад дает ссылки на ADB коим не нужен root:

    https://play.google.com/store/apps/details?id=com.sherdle.adbwireless

    http://sherdle.com/adb/

  7. Думается мне - это без разницы. Где вам удобнее располагать иль откуда удобнее запускать для инсталляции - туда и копируйте. Часть софта, к примеру, я храню в каталоге "soft". Кой чего в каталоге "Bluetooth" - просто потому что порой заливаю проги по блутусу...

  8. Гм... Под деплоем, по сути, понимается сборка итогового apk файла. И из этого следует вот что:

    - предварительно (в процессе составления ПО и пр... До деплоя) надо подготовить нужные файлы, и прописать в деплой менеджере где их надо брать и где располагать.

    - разносить прогу по устройствам надо именно этим apk файлом. Желательно все сопутствующие файлы упрятать в apk. Хотя в принципе - можно и просто скопировать.

    В итоге - копируете на флешу apk (и, быть может, сопутствующие файлы) и разносите и инсталлите все это дело по девайсам. Если есть сеть между устройствами - можно по сети.

  9. Kitty

     

    Не уверен что так можно делать а Android. Тут, как и многое другое, надо юзать через Intent-ы (намерения).

    Рыться надо по сему поводу на сайтах/форумах по программированию на Android. Ибо в мануалах и демках BDS это скудно освещено.

  10.  

    Если я не ошибаюсь, то класс TIniFile на мобилках не поддерживается. Или свой обработчик надо сделать, или сторонний взять. (вот тут что-то писали об этом http://francois-piette.blogspot.be/2014/01/tinifile-for-android-and-windows.html). Если я не прав - поправьте.

     

    Ошибаетесь, TIniFile работает везде.

     

    Сорри. Буду знать :)

  11. Kitty

     

    Если я не ошибаюсь, то класс TIniFile на мобилках не поддерживается. Или свой обработчик надо сделать, или сторонний взять. (вот тут что-то писали об этом http://francois-piette.blogspot.be/2014/01/tinifile-for-android-and-windows.html). Если я не прав - поправьте.

     

    Что до пути - то да. это путь, где разворачивается программа. И, повторюсь, удобнее хранить ini-шники (если приходится их перезаливать или править руками) в иной папке (до хоть в документах или еще где). Конечно - надо учитывать, что при удалении программы останется этот ini-шный "мусор".

  12. Ага. Вот оно как :) . Как то не задумывался в таких случаях о порядке создания контролов.

     

    Эмм... А такой момент - есть в среде средства для изменения порядка создания контролов? Или только руками в .fmx файлах править? Или возиться с управлением в рантайм через BringToFront/SendToBack (чего бы не очень хотелось, ибо как я понимаю, - надо будет заморачиваться с учётом родительских лайоутов, панелей и т.п.)

  13. 2 Brovin Yaroslav

     

    Вы писали тут: http://fire-monkey.ru/topic/216-kak-uvelichit-oblast-perekhvata-sobytii-myshi-i/#entry791

     

    Эммм... Так сказать "тактильно" - не сказал бы, что проблема именно в этом. Потому как в том частном случае описанным мной в принципе не получалось попасть в указатель выделения текста. Пробовалось на нескольких устройствах, с разными разрешениями. И целился в центр аккуратно и т.п. меж тем - левый указатель выделения текста - отрабатывает нормально. Не буду оспаривать. Вам как разработчику виднее. Но ощущение, что контрол расположенный ниже находится, так сказать, приоритетнее в списке того что надо выбирать при тапе, нежели указатель выделения текста.

     

    Если пробовать вариант описанный вами: http://fire-monkey.ru/topic/216-kak-uvelichit-oblast-perekhvata-sobytii-myshi-i/#entry792

     

    Тогда вопрос - при каких событиях надо расширять логический размер?

  14. Гм. Есть некоторая путаница в определениях. Под курсором понимается и место где появится следующий символ (текстовый курсор, caret, каретка), а так же позиция где будет применяться мышь или аналог (указатель, pointer). Собственно я говорил изначально об указателе/стрелочке/... (не знаю как корректно это зовется) на текстовый курсор. Слово "текстовый" или каретка я не писал, но думал что по контексту это ясно. Да и говорили мы именно об этом.

     

    Тем паче путаница - что я хочу курсором-указателем двигать некий объект который будет двигать курсор-каретку. 

     

    Сорри за оффтоп, но возможно логичнее будет переименовать тему/теги, нежели создавать отдельную тему. Но на это права, как я понимаю, есть только у админов.

  15. 2 Andrey Yefimov

     

    Гм. "Положение, размеры, ..." - это, насколько я понимаю, именно касаемо самих контролов. А как такового курсора в контроле? Можно, конечно, пытаться вычислять длины букв и т.п. и рисовать на основе этого некий свой указатель. Но по идее это уже все реализовано в FM. Надо только знать где и как воспользоваться можно.

     

    p.s. ок. Благодарю. Приму к сведению и переоформлю.

  16. Пробовалось на Delphi XE5, XE5 Upd2, XE6. Везде возникает та же беда.

    Однако при использовании сторонней клавиатуры - такой проблемы не возникало. Только с родной.

    По возможности попробую проверить ситуацию ещё на ряде устройств. Но всё ж печально, что именно в "родных гугловских" условиях возникает такая ситуация.

     

    Как я подозреваю - клавиатура не понимает, что контрол сменился, и пытается подчеркивать для подстановки тот же текст. В частности - если писать в 1-м Edit-е, потом свернуть клавиатуру, и только после этого тапнуть по 2-му - то всё проходит корректно. Быть может как временный костыль есть возможность как нить "передёрнуть" клавиатуру?

  17. Andrey Yefimov

     

    Компоненты сии видел. Пробовал. Общался с разрабом. Они тоже не без грехов :) .

     

    Ммм... А всё же - если сделать даже свою надстройку - реально? Где можно порыться на премет определения координат курсора и т.п.?

     

    ...

     

    p.s. Гм. Старался, вроде, оформить как требуется правилами. Если не сложно - ткните носом чего не учел, или что не так описал.

  18. Я так понимаю - вам надо получить путь к каталогу где "лежит" само приложение для сохранение конфигов и т.п.

    Для эти целей воспользуйтесь GetHomePath.

     

    Однако учтите, что доступ к данному каталогу (если телефоне не root-ован) имеет только сама ваша программа (ну естественно и ось и т.п.). Т.е. зайти туда (без рута) вы не сможете.

    Для хранения настроек программы, ресурсов - это вполне удобно. Однако для логов, или выгрузки результатов работы - лучше определить для себя иной каталог.

    • Среды: Delphi XE5, XE5 Update 2, XE6
    • Устройство: GalaxyNexus. Ось стоковая Android 4.2.1

    На примере стандартной демки MobileControls.

    1. Открываем закладку EDITORS.
    2. Вводим в Edit3 текст "Test test" (не суть. важно что бы было 2 слова).
    3. Скрываем клавиатуру. И долгий тап одному из слов. При этом одно из слов выделяется, появляются кнопки "копировать/вырезать/вставить" и указатели границ выделенного текста 1 и 2:

      post-123-0-57248300-1398172069.jpg

    4. Пытаюсь зажав указатель выделения 2 увеличить или уменьшить область выделения текста.

    Ожидается: изменение области выделения текста при перемещении указателя границы 2

    В действительности: видимо т.к. контрол item1 расположенный ниже достаточно близко к Edit3 (указатель 2 его перекрывает) то не происходит перемещение указателя границы 2, а фокус переходит к item1 и реакции на его тап:

    post-123-0-04522200-1398172075_thumb.jpg

     

    Возможно ли и как обойти подобные ситуации?

    • Среды: Delphi XE5, XE5 Update 2, XE6
    • Устройство: GalaxyNexus. Ось стоковая Android 4.2.1

    На примере стандартной демки MobileControls.

     

    1. Открываем закладку EDITORS
    2. Вводим в Edit3 текст "Test test test test" (не суть. важно что бы длинна текста была больше длинны контрола).
    3. Скрываем клавиатуру. И долгий тап по последнему слову. Cлово выделяется, появляются кнопки "копировать/вырезать/вставить" и указатели границ выделенного текста 1 и 2:

      post-123-0-63705900-1398326674.jpg

    4. Удерживая левый указатель двигаем его к левому краю:

      post-123-0-13020300-1398326679.jpg

     

    Ожидается: протянув левый указатель выделенного текста до левого края контрола можно будет как бы пытаясь переместить его дальше края - выделять ту часть текста, что скрыта границей контрола. Текст при этом как бы перемещается вправо.

    В действительности: Левый указатель выделения замирает у границы и дальнейших выделений/перемещений не происходит.

    Аналогично обстоит ситуация и при выделении текста правым указателем выделения. В итоге - выделить текст который визуально длиннее чем контрол - не возможно.

     

    В купе с темкой http://fire-monkey.ru/topic/208-kak-otobrazit-ukazatel-pozitcii-kursora-v-tedit/ управлять текстом довольно тяжко.

     

    Есть решения для подобной ситуации? Возможно как-то в ручную определять и обрабатывать подобное?

  19. Как изменить или сделать свои кнопки редактирования (Cut/Copy/Paste) для TEdit/TMemo под Андроид

    Есть возможность управлять их отрисовкой/появлением?
    Возможно это сугубо мое личное мнение, но выглядят они не очень удобно и симпотишно. И порой - возникают косяки с их отрисовкой.

    см скрин: перенос текста у "Вставить", стали полупрозрачными из-за расположения полупрозрачных контролов на форме

     

    post-123-0-72599700-1398158226_thumb.jpg

     

    (сорри за грубый блур)

     

    Быть может можно по какому то событию отображать свою, например, панель с функционалом редактирования, или изменить вид самих кнопок (разместив на них иконки, вместо текста и т.п.)

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