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

Belov.V.

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

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

  • Посещение

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

    6

Belov.V. стал победителем дня 21 октября 2015

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

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

1 545 просмотров профиля
  1. Еще в документации нашел рекомендацию для возможности использовать System.zLib установить пакет zlib-deve. Для Debian9 это zlib1g-dev. Установил, обновил SDK, количество предупреждений о не найденных путях по прежнему 6
  2. Belov.V.

    Сборка приложений под Linux

    Предлагаю поделиться практикой сборки приложений под Linux, набором ошибок и глюков. Решил сделать пару экспериментов в связке RAD-Linux. 1) Есть рабочий Debian7. На нем не пошел PAServer. Требует glib версии 2.14 или 2.17 (на 7-ке 2.12). Добавил в репозиторий ссылку на пакеты от debian 8. Обновил. PAServer стартует, но тут же валится по ошибке сокета (не записал как звучит). Пока все пакеты подряд. 2) Поднял Debian8. Чистый. PAServer стартует, SDK в RAD студию загружается. При попытке сборки ошибка "[DCC Error] E2597 C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lgcc_s" При обновлении кеша файлов SDK ругается: Directory does not exist: /usr/include/c++/ Directory does not exist: /usr/include/x86_64-linux-gnu/ (исчезла после gcc-6) Directory does not exist: /usr/include/x86_64-linux-gnu/c++/ Directory does not exist: /usr/include/c++/ Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/ Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/ Directory does not exist: /usr/lib64/ Доставил пакеты gcc-6 и linux-compiler-gcc-6-x86, обновил файлы кеша SDK (исчезла вторая строчка в предупреждении при обновлении). Ура! Простейший пример собирается и стартует. Под отладчиком работает. Но остались шесть предупреждений при обновлении linux SDK. Где это может вылезти?
  3. Олег, хорошо бы темы закрывать описанием способа решения вопроса. У Вас второй вопрос подряд и в итоге просто "Спасибо разобрался". Что было, в чем отличие FMX на Win и Андроид, можно просто погадать. Удачи и с уважением!
  4. Rusland, может конечно бредовая версия, т.к. слишком просто :-) где файл БД лежит? есть ли у сервиса доступ к нему?
  5. Вроде в RX есть изменения в этом. В одном проекте с табами положение элементов рассчитывал при создании формы. И при переходе на RX все это "развалилось". Пришлось на скорую руку переделывать. Как раз решил, что для оптимизации алгоритм изменили. Но подробно не разбирался.
  6. После перехода на RX и попытке запуска отладки приложения на девайс с 3.2 при загрузке в устройство выдается вот такая ошибка (в теме). Изменение в настройках Option-SDK (SDK и NDK), как то понижение версии платформы ничего не дает. Play Market тоже отмечает, что приложения собранные на RX имеют Уровень AP 14+ Посмотрел глубже - в файле AndroidManifest.xml упорно прописывается: <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="14" /> и не зависит от того что выбираешь в настройках SDK. Где задается minSDKVersion? Или от каких настроек это значение зависит? Можно конечно в автоматически сгенерированном AndroidManifest.template.xml ручками внести изменение: <uses-sdk android:minSdkVersion="%minSdkVersion%" заменить к примеру на minSdkVersion="9" но это как-то кустарно и пока на крайней выход.
  7. Goggle Drive в качестве имени ставит то, что указано в Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(aComment)); Т.е. прописывайте в это поле имя файла без пути, Mail.ru не пробовал.
  8. Belov.V.

    Переход на RAD 10

    И что изменилось примерно можете сказать, если Вас не затруднит? Если еще интересно - при onResize новые размеры TabItem'а изменялись только у активного в текущий момент. У скрытых размеры не изменяются. В общем то логично для экономии ресурсов сделали. Но вот при переключении на другой TabItem динамически формируемая форма разваливалась, т.к. ее размеры изменялись, но никакое событие не возникал - ни у TabControl, ни у TabItem. Что заметил, у самих TabItem-ов Event onResize вообще никогда не возникает. Как раньше было не помню. .....как-то так вроде.
  9. Belov.V.

    Переход на RAD 10

    Vitaldj, думаю ни как. Было указано, как пример проведенных изменений. Как и упоминание о файле манифеста на андроиде - вдруг кому поможет.
  10. Belov.V.

    Переход на RAD 10

    В выходные переводил на RX приложение. Последний сборка была на XE7. С ходу не пошло. По другому стали срабатывать события у объектов. Видно, что перелопатили солидно. К примеру у меня динамически формировалось положение элементов на форме по событию onResize у TabControl. Стало работать по другому. Пришлось переписывать (для всех платформ). А вот со вторым появившемся глюком (на Android) бился долго - при смене ориентации экрана приложение вылетало. Под отладчиком "raised exception class segmentation fault (11)". Глову сломал, Потом догадался сравнить файлы манифеста приложения с вновь созданным под RX. Чтоб короче - результат: убил старый файл. Новый пересоздался. Ошибка исчезла.
  11. Проверьте вот это место в коде: // прикрепляем файл j_file := SharedActivity.getExternalFilesDir(StringToJString(f_name)); Обратите внимание, что там указано имя прикрепляемого файла без пути к нему. По описанию ситуации очень похоже на ошибку в этом месте.
  12. Вот пример. Соорудил, проверил, вроде работает. Размер файла нормальный. Скриншеты на двух почтовых клиентах: Upd: в RX небольшие изменения. См. второй пример. (для первого идут предупреждения, хотя тоже работает) Sample-SendAttach.zip Sample-SendAttach_RX.zip
  13. Спасибо, помогло! по поводу пути, да, лежат именно в Androidapi.IOUtils.getExternalFilesDir. Буду разбираться. Я такой вариант получал, когда j_file не верно записывал. См. выше
  14. Как вариант, почему нет присоединенного файла - проверьте сохранение файла именно по этому пути: f_name := 'sample-temp.txt'; //f_path := TPath.Combine(Androidapi.IOUtils.getExternalFilesDir,f_name); // пусть именно такой // или f_path := TPath.Combine(TPath.GetSharedDocumentsPath, f_name); // или тоже самое: GetPublicPath ...SaveToFile(TPath.Combine(TPath.GetSharedDocumentsPath, f_name)); // прикрепляем файл j_file := SharedActivity.getExternalFilesDir(StringToJString(f_name)); В особенности заполнение j_file проверьте. Тоже самое было, когда пробовал по другим путям файл отправки класть. Имя было, но не отправлялось. Удачи!
×
×
  • Создать...