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

Поиск сообщества

Показаны результаты для 'размер приложения'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
    • Android
    • iOS
    • OSX
    • Windows
    • Windows Phone
    • Linux
  • Вопросы по использованию RAD Studio
    • Лицензирование
    • Сборка проектов
    • Multi-Device Designer
    • Редактор кода
    • Вопросы
  • Обучение
    • Основная информация
    • Вопросы
    • Отзывы
  • Поиск специалистов по FireMonkey
    • Консультации
    • Ищу подрядчика
  • Дополнительные ресурсы по FireMonkey
    • Сторонние компоненты
    • Приложения, написанные с использованием FireMonkey
    • Примеры
    • Руководства
    • Шаблоны
    • Статьи и заметки
    • Информация о версиях RAD Studio
    • Новости
  • Организация работы данного форума

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


StackOverflow


Защита от ботов


Город


Интересы

  1. Причиной вылета приложения может быть ошибка в коде, которая вызывает неопределенное поведение при выполнении некоторых действий с TMemo. Ошибка может быть связана с попыткой доступа к освобожденной памяти или нарушением границ массива. Чтобы выявить причину ошибки, вы можете использовать отладчик в Delphi, который позволяет исследовать состояние программы во время выполнения и отслеживать переменные, значения и вызовы функций. Если вы не можете использовать отладчик для какой-либо причины, попробуйте добавить в ваш код обработку исключений, чтобы увидеть, какая ошибка возникает и в каком месте. Например, вы можете использовать следующий код: try // код, который может вызвать ошибку except on E: Exception do ShowMessage('Error: ' + E.Message); end; Этот код позволит отлавливать исключения и выводить сообщения об ошибках в приложении. Кроме того, вы можете попробовать использовать инструменты трассировки, такие как Logcat или сторонние инструменты для отслеживания ошибок в приложении на устройстве Android. Они могут помочь вам идентифицировать проблему и выявить причину вылета приложения.
  2. Приветствую! Очень странная проблема, Дано: TTabControl на нем страницы. На одной TListView - со стандартным стилем (Stylelookup = '' и Items со стилем TAppearanceNames.ImageListItem) На другой лежит TListBox со Stylelookup = '', но переопределен с моим сustom стилем (3 TText разных цветов и TImage с именем icon). Везде стоит Font size - Default, втч и в этих трех TText. Когда запускаю на Android размер шрифта конкретно в этом TListBox меньше чем в TlistView и в остальных компонентах (например в другом TListBox, который встроен в TMultiView). На Windows вроде одинаково. Нигде в проекте не менял размер шрифта, scale тоже нигде не менял.. Может кто встречал подобное поведение? Delphi Berlin update 2 FireMonkey Different font size on custom and default styled controls
  3. Нужно получить размер файла под любыми платформами. Сейчас использую функцию function TFileManager.GetFileSize(APath : String) : String; Var F : file of Byte; AFileSizeByte : Integer; AFileSizeMbyte : Double; begin Result:=''; AssignFile(F, APath); FileMode := 0; // readonly try try Reset(F); AFileSizeByte:=FileSize(F); CloseFile(f); except end; finally AFileSizeMbyte:=AFileSizeByte/1048576; Result:=Format('%6.3f',[AFileSizeMbyte])+' Mbyte'; end; end; Работает, но есть одно но - под Windows, если проверяю exe файл, антивирус (в данном случае Защитник Windows) унюхивает что производится открытие файла и начинает его проверять на вирусы. Из за этого сканирование директории с большим количеством исполняемых файлов подвешивает основной поток приложения. Вопрос в следующем - нет ли другого способа получения размера? Странно что TFile, TPath или TDirectory не содержат такого полезного метода. В данный момент двигаюсь в направлении отдельного потока получения размера, но решение не красивое, хочется быстро и сразу.
  4. Как в FMX Memo задать размер таба (символа с кодом #9)? По умолчанию он гигантский. Все способы из гугля оперируют или VCL Memo или win api. Нужно мультиплатформенное решение.
  5. Здравствуйте. Подскажите пожалуйста. Можно ли с помощью стилей создать кнопку в которой размер текста будет меняться автоматически вместе с размером кнопки, так что бы текст "правильно" и "красиво" вписывался в размер кнопки, с учетом WordWrap и без него.
  6. А производители кастомных оболочек не боятся, что их пошлют на хрен? У меня есть информация, что Play Market не размещает у себя приложения, которые вычисляют местоположение в ФОНОВОМ режиме. Но такие проиложения можно разрабатывать в своих интересах. А если хочешь продавать такие программы, то это можно делать и минуя Play Market: посвящай свой сайт этой программе и продавай.
  7. На радостях что сервис теперь может автоматически стартовать после перезагрузки системы (спасибо Ефимову Андрею), решил что пора научится получать координаты GPS через сервис. Вариант 1. Как-то я уже пробовал это сделать прицепив к dfm TLocationSensor, но был крах. Сегодня я прочитал вот такую статейку где говорится как раз об этом - крошится из-за того что в System.Android.Sensors используется Activity, которое null (у нас же сервис, а не простое приложение) и предлагается решение в виде внесения изменение в System.Android.Sensors и System.Sensors. Я внес указанные изменения (сами файлы в patch.zip прикрепил к сообщению), скачал их Демо пример отсюда, положил вышеуказанные файлы в папку patch, но при компиляции выдает 3 ошибки вида: на строки соответственно Попробуйте кто-нибудь скомпилировать у себя пожалуйста. Пример должен быть рабочий по идее... тогда я решил действовать по другому: Вариант 2. Я вспомнил что можно обойтись без TLocationSensor и использовать LocationListener. В сервисе сделал так: unit Unit2; interface uses System.SysUtils, System.Classes, System.Android.Service, AndroidApi.JNI.GraphicsContentViewText, Androidapi.JNI.Os, Androidapi.JNI.App, Androidapi.JNI.Location,Androidapi.JNIBridge,Androidapi.JNI.JavaTypes,Androidapi.Helpers, // для координат AndroidApi.Log; // лог смотреть через monitor.bat type TLocationListener = class; TAndroidServiceDM = class(TAndroidService) function AndroidServiceStartCommand(const Sender: TObject; const Intent: JIntent; Flags, StartId: Integer): Integer; private { Private declarations } FLocationManager: JLocationManager; locationListener: TLocationListener; public destructor Destroy; override; { Public declarations } procedure StartLocator(); procedure onLocationChanged(Location: JLocation); end; TLocationListener = class(TJavaLocal, JLocationListener) private [weak] FParent: TAndroidServiceDM; public constructor Create(AParent: TAndroidServiceDM); procedure onLocationChanged(Location: JLocation); cdecl; procedure onProviderDisabled(provider: JString); cdecl; procedure onProviderEnabled(provider: JString); cdecl; procedure onStatusChanged(provider: JString; status: Integer; extras: JBundle); cdecl; end; var AndroidServiceDM: TAndroidServiceDM; implementation {%CLASSGROUP 'FMX.Controls.TControl'} {$R *.dfm} function TAndroidServiceDM.AndroidServiceStartCommand(const Sender: TObject; const Intent: JIntent; Flags, StartId: Integer): Integer; begin StartLocator(); Result:=TJService.JavaClass.START_STICKY; end; destructor TAndroidServiceDM.Destroy; begin if Assigned(locationListener) then FLocationManager.removeUpdates(locationListener); inherited; end; procedure TAndroidServiceDM.onLocationChanged(Location: JLocation); var M: TMarshaller; begin if Assigned(Location) then begin Logi(M.AsUtf8('LogLatitude '+ Location.getLongitude.ToString).ToPointer); Logi(M.AsUtf8('LogLongitude '+Location.getLongitude.ToString).ToPointer); end; end; procedure TAndroidServiceDM.StartLocator(); var LocationManagerService: JObject; GPSLocation, NetworkLocation: JLocation; begin if not Assigned(FLocationManager) then begin LocationManagerService := SharedActivityContext.getSystemService(TJContext.JavaClass.LOCATION_SERVICE); FLocationManager := TJLocationManager.Wrap((LocationManagerService as ILocalObject).GetObjectID); if not Assigned(locationListener) then locationListener := TLocationListener.Create(self); FLocationManager.requestLocationUpdates(TJLocationManager.JavaClass.GPS_PROVIDER, 10000, 0, locationListener, TJLooper.JavaClass.getMainLooper); FLocationManager.requestLocationUpdates(TJLocationManager.JavaClass.NETWORK_PROVIDER, 10000, 0, locationListener, TJLooper.JavaClass.getMainLooper); end; GPSLocation := FLocationManager.getLastKnownLocation(TJLocationManager.JavaClass.GPS_PROVIDER); NetworkLocation := FLocationManager.getLastKnownLocation(TJLocationManager.JavaClass.NETWORK_PROVIDER); onLocationChanged(GPSLocation); onLocationChanged(NetworkLocation); end; constructor TLocationListener.Create(AParent: TAndroidServiceDM); begin inherited Create; FParent := AParent; end; procedure TLocationListener.onLocationChanged(Location: JLocation); begin FParent.onLocationChanged(Location); end; procedure TLocationListener.onProviderDisabled(provider: JString); begin end; procedure TLocationListener.onProviderEnabled(provider: JString); begin end; procedure TLocationListener.onStatusChanged(provider: JString; status: Integer; extras: JBundle); begin end; end. После старта приложения, через несколько секунд оно морозится и система спрашивает "Подождать?". Расстановка breakpoint-ов мне не помогла, ошибка случается раньше Segment fault 11. Пример в архиве ASARservRepair2.zip прикрепляю. Посмотрите пожалуйста в чем может быть проблема? ASARservRepair2.zip patch.zip
  8. Когда мы на Андроид устройстве клавишей переходим в TaskManager (Менеджер запущенных приложений), мы видим наши Недавние или Запущенные приложения в виде прямоугольников/квадратов. А именно: квадратный "скриншот" вместимости приложения и над "скриншотом приложения" размещается TopBar, на котором отображается некоторая информация (ярлык, название приложения и цвет, читаемый с приложения, а именно colorPrimary приложения). {Android L} В моём приложении, независимо от colorPrimary/colorPrimaryDark, TopBar имеет черный цвет. Можно ли это как-то изменить? Embarcadero RAD 10.2 Tokyo, Delphi. (использую модуль, который окрашивает даже StatusBar) Ниже прикреплены изображения для ознакомления с терминами.
  9. Здравствуйте, планирую сделать приложение с распознанием речи. Java Android! Помогите пожалуйста, как это реализовать. Может ссылки полезные
  10. Доброго времени суток! Подскажите, как узнать оригинальный размер картинки, загруженной в TImage ?
  11. Есть форма BorderStyle = none. Как можно реализовать изменение размера формы? На VCL все работает, а на FMX нет.
  12. Slym, спасибо. Я примерно так и думал сделать. Только вопрос. Как можно определить pid при запуске приложения?
  13. TImageViewer умеет делать scale и Scroll. Колесом мышки можно увеличивать\уменьшать картинку, и скролить. Очень странно что такой возможности нет для моб. платформ. А именно изменять размер картинки двумя пальцами. Даже не знаю с чего начать. Я что-то думал что это уже готовый компонент, нафиг он нужен тогда..
  14. Добрый день. Подскажите пожалуйста, есть ли возможность запретить повторный запуск приложения под Linux? Там с Mutex уже не получится.
  15. На таблетах форма очень растянута. Как можно задать максимальный размер для главной формы. Пусть по краям будут полосы.
  16. Можно ли как то автоматически определять разрешения экрана и подгонять форму с компонентами под неё? приложение под андроид
  17. Здравствуйте! Есть VCL приложение с кодом: function GetWindow(Handle: Cardinal; LParam: longint): bool; begin Result:= true; WindowList.Add(Pointer(Handle)); end; function TFileOperationsThread.GetHandles(ThreadID: Cardinal): Cardinal; var i: integer; hnd : Cardinal; cpid : DWord; begin Result:=0; WindowList := TList.Create; EnumWindows (@GetWindow, 0); for i := 0 to WindowList.Count - 1 do begin hnd := HWND(WindowList[i]); GetWindowThreadProcessID (hnd, @cpid); if ThreadID = CPID then begin Result := hnd; WindowList.Free; Exit; end; end; WindowList.Free; end; procedure TFileOperationsThread.Execute; var SEInfo: TShellExecuteInfo; StartInfo: TStartupInfo; ProcInfo: _PROCESS_INFORMATION; AppHandle: THandle; begin StartInfo.cb:=SizeOf( StartupInfo); StartInfo.dwFlags:=STARTF_USESHOWWINDOW; StartInfo.wShowWindow:=SW_SHOW; if FileExists(FFileInfo.FullFileName) then begin if CreateProcess(PChar(FFileInfo.FullFileName), PChar(FFileInfo.FullFileName), nil, nil, False, NORMAL_PRIORITY_CLASS, nil, nil, StartInfo, ProcInfo) then begin WaitForInputIdle(ProcInfo.hProcess, INFINITE); AppHandle:=GetHandles(ProcInfo.dwProcessId) SendMessage(FFormHandle, WM_NEED_CHANGE_STATE, WPARAM(AppHandle), SMP_WINDOW_HANDLE); CloseHandle(ProcInfo.hProcess); CloseHandle(ProcInfo.hThread); end; end; end; Код нормально запускает приложение написанное на Firemonkey. Но функция GetHandles возвращает некое число, которое НЕ равно ни ApplicationHWND, ни FormToHWND(Self) firemonkey приложения. Функция WaitForInputIdle возвращает 0. Проблема решается заменой WaitForInputIdle(ProcInfo.hProcess, INFINITE); на Sleep(500); В AppHandle получаю значение равное FormToHWND(Self) firemonkey приложения. А теперь вопрос: Подскажите плиз как получить Виндовый хендл главной формы Firemonkey-приложения после его запуска и что это за неизвестное число, которое получаю в AppHandle:=GetHandles(ProcInfo.dwProcessId). Не хочется использовать FindWindow.
  18. Здравствуйте. Мне нужно создать ~250000( а то и много больше) вершин и в два раза больше индексов, ошибок нету но отрисовываются только чуть больше половины. С 20000-30000 вершин проверял, все нормально, то есть код рабочий. Скорее всего дело что слишком много вершин и-или индексов. Есть какие ограничения, кроме системных в данном случае и как оптимально сделать?
  19. В серьезных приложениях (Сбербанк-онлайн или Ютюб и т.п.) когда выходят обновления с новыми функциими, они запускают своеобразный интерактивный ролик. Когда экран затемняется и остается не затемненным только новый элемент экрана например, а на затемненном фоне описывается что делает этот новый элемент.Потом все это плавно переходит к другому элементу и т.д. Выглядит все довольно красиво. Задался вопросом, как сделать что-то подобное под FMX. Для себя не нахожу никаких очевидных решений. Подскажите если кто знает, направления решения этой задачи? Заранее спасибо.
  20. Всем привет! Имеется приложение под винду на VCL (торговый терминал). Возникло желание перевести на FMX для сборки под MacOS (это основная цель). Неделя тестов, мида конвертер и ручное ковыряние и правка кода и вуаля, приложение скомпилировалось:) Однако при первом взгляде на свеже-испеченную прогу меня охватил ужас! Хотя нет, ужас охватил еще раньше, когда в одном из тестов мемо с коротеньким текстом на 2 страницы загрузило ЦПУ на 20% при скролле... Тогда я решил, что вобщем-то мои пользователи редко будут мемо скролить. Но вот общий вид приложения, эти стремные шрифты, несоразмерные кнопочки и тп, едва не отбили желание продолжать:) Теперь от лирики к существу: нужна консультация по вопросу, стоит ли вообще и если да, то какие подводные камни могут еще встретится и как обходить. Дельные консультации, а также практическую помощь (стили, советы, куски кода) готов хорошо оплатить.
  21. Не нашёл раздел по 3d на данном форуме, пишу в графике. Админы поправьте, если я не прав. А моя проблема заключается в том, что при динамической загрузке объектов, они разного размера. При этом размер не рандомный вовсе, а просто модель то большая, то маленькая, то просто смещена. Загружаю так: TModel3D.LoadFromFile(''); Модель кинул на форму. При создание динамически тоже самое. И ещё, скажите как правильно чистить TModel3D от подгруженной модели? Чтоб и текстуры удалялись. Реализация TModel3D мне показалось очень странной...
  22. Я считаю, что это недоработка Embarcadero. У меня работает с такой же погрешностью. А вот приложения на JAVA (язык, который я ненавижу) работают гораздо точнее.
  23. Ссылка: http://delphifmandroid.blogspot.ru/2016/01/broadcastreceiver.html Автор: Андрей Ефимов Описание: [broadcastReceiver] Автозапуск приложения после перезагрузки ОС
  24. Вообще несколько вопросов по данной теме, буду рад если тыкните на документацию embarcadero. В данный момент apk моего приложения весит ~90мб и помещается оно на sd-карту. 1. Сколько весит пустой apk с одной формой? 2. Как устанавливать apk на телефон? Где можно это указать в IDE? 3. Как можно уменьшить размер apk? Убрать лишние библиотеки? Может как-то еще? 4. В своем приложении я использую много картинок, каждая в среднем занимает ~100кб. Это нормальный размер для картинок? Или можно и лучше использовать меньший размер? Но тогда качество будет ужасным.
  25. Как сделать счётчик сообщений на иконке приложения?
×
×
  • Создать...