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

masmat

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

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

  • Посещение

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

    1

Весь контент masmat

  1. При указанном мной способе, файл перезаписывается на УРА
  2. Под Android я делаю так. Вставляю изначально файл БД в Deploy. Потом вызываю при необходимости процедуру procedure TForm1.RefreshBD; { TODO -cKod : RefreshBD - обновление БД } var PackageName: JString; zip: TZipFile; begin // Отключаемся от базы FDConnection1.Connected := False; // Получаем имя apk файла PackageName := SharedActivityContext.getPackageResourcePath; if TFile.Exists(JStringToString(PackageName)) then begin // Удаляем старый файл базы TFile.Delete(TPath.GetHomePath + PathDelim + 'DBGK.db'); // Извлекаем новый файл базы zip := TZipFile.Create; zip.Open(JStringToString(PackageName), TZipMode.zmRead); zip.Extract('assets/internal/DBGK.db', TPath.GetDocumentsPath, False); zip.Close; zip.free; end; // Подключаемся к базе FDConnection1.Connected := True; end; Под iOS вставляю в ресурсы, потом вот так procedure TForm1.RefreshBD; { TODO -cKod : RefreshBD - обновление БД } begin // Отключаемся от базы FDConnection1.Connected := False; if FindResource(0, 'res_bd', PChar(RT_RCDATA)) <> 0 then rs_bd := TResourceStream.Create(0,'res_bd',PChar(RT_RCDATA)); if TFile.Exists(TPath.GetHomePath+PathDelim+'Documents'+PathDelim +'dbgkios.db') then begin TFile.Delete(TPath.GetHomePath+PathDelim+'Documents'+PathDelim +'dbgkios.db'); rs_bd.SaveToFile(TPath.GetHomePath+PathDelim+'Documents'+PathDelim +'dbgkios.db'); end else begin rs_bd.SaveToFile(TPath.GetHomePath+PathDelim+'Documents'+PathDelim +'dbgkios.db'); end; FDConnection1.Connected := True; end;
  3. Есть две таблицы (Таб1, Таб2), в каждой из них есть BLOB поле (BLOB1, BLOB2). В Таб1.BLOB1 есть картинка в формате PNG. Вопрос, как из Таб1.BLOB1 скопировать картинку в Таб2.BLOB2 в SQL запросе?
  4. Ну вот собственно как я и говорил, не находит сертификат, надо восстанавливать его
  5. Т.е. получается, каждый раз, когда я хочу разместить обновление, мне нужно будет все удалять, делать релиз, выкладывать и потом все заново восстанавливать. Как-то не рационально. Ладно, посмотрим в будущем.
  6. Ярослав спасибо. Данная инструкция вроде сработала, Loader файл проглотил, жду теперь 2 недели. Однако это сработало только с 4 раза, именно поэтому я спросил тут. Однако возникает новый вопрос, если я сейчас удалил все сертификаты Development. то смогу ли я продолжать разработку, без выпуска релиза AppStore.
  7. Очень помог, спасибо. Если ты не заметил, я сфоткал экран на MAC, а искать там PrintSreen не когда.
  8. При выкладке приложения в AppStore появилась вот такая ошибка Загружаю через Loader. Кто-нибудь смог решить эту ошибку? Подскажите
  9. Это новый проект, там точно ничего не было в Create и Show. У меня появилась одна догадка в чем может быть дело, но пока не могу утверждать это. Когда на форме много компонентов и ты начинаешь их удалять, то в файлах проекта остаются от них следы. Такое наблюдалось у меня при удалении компонент: TabControl, ImageList, Image, Grid-ы После того, как я удалил все строки во всем проекте касающиеся созданию этих удаленных контролов, так сразу скорость работы увеличилась. Эксперименты продолжаются
  10. В компоненте TMapView можно использовать только карту Google Map, другие не удавалось подключить (пробовал в XE 8.1) Так вот, по лицензионной политике Google при превышении порога в 1000 запросов (не помню то ли в день, то ли в месяц) карта работать перестанет. Нужно будет покупать лицензию. Так было на октябрь 2015 года. Может сейчас политика Google изменилась, нужно уточнять.
  11. А есть у кого-нибудь присутствующих опыт разработки на XCode? Хочется понимать, есть ли там такие проблемы с тормозами при запуске?
  12. Только учтите, что при сохранении Опций проекта этот Ваш файл может быть перезаписан и тогда строки пропадут.
  13. Ярослав, Вы забыли указать, что компонент допускает в бесплатном варианте до 1000 сессий, потом он не будет работать.
  14. Это что то новое)))) Вот и я теперь не знаю куда копать. На Андроиде всё приложение запускается за 6-8 секунд, в зависимости от аппарата. А на iOs это же приложение за 30 секунд. Пришлось начать писать проект под iOS с "нуля" и наткнулся сразу на эту проблему. И это только несколько компонентов и 2 формы. А дальше еще БД есть и т.д. с этим связанное.
  15. Вообщем добился я результата в 4 секунды запуска, т.е. показа черного экрана заставки. Для достижения этого нужно было всего лишь оставить на форме один Button. Сокращение времени загрузки происходило при удалении компонентов Label. Получилось 1 Label = 1 секунда.
  16. Время запуска не изменилось. Заставка запуска так и висит 15-16 секунд, потом все быстро запускается, что я даже не успеваю увидеть сплэш-форму. Вот как уменьшить момент показа черного экрана? Я ставил туда типовую картинку от Delphi, потом поставил туда свою картинку, на которой написано типа "Идет загрузка, подождите пожалуйста", но блин ждать 15 секунд на запуск приложения это много. Потом скорость работы приложения меня устраивает, но вот сам запуск очень смущает
  17. Вообщем странные всё эти тормоза. Новый проект, 2 формы, создаются автоматически. На каждой форме по несколько контролов (панель, лабель) Запуск 15 секунд до открытия первой формы. Другие же приложения могут быстро запускаться, почему из под Delphi они так медленно запускаются? Есть у кого-нибудь мысли?
  18. Спасибо. Сейчас буду пробовать. По результатам обязательно отпишусь
  19. 1. Думал про БД. Даже делал специально выборку всех данных в одном запросе, что бы положить в память. Но не помогает. Если Вы заметили, я писал, что отключал получение данных, все равно форма открывается первые 3-4 раза долго. 2. Выносите БД в отдельный поток - буду признателен, если поделитесь как это сделать. Может поможет. 3. "Форму если она часто вызывается лучше один раз создать, потом просто скрывать и отображать." - я так же писал, что она создается один раз и потом не закрывается, а скрывается через Hide, т.е. она не уничтожается P.S. За ссылку спасибо
  20. Ситуация: Есть Form1, на ней есть ListView, в который загружается список значений одного из полей БД SQLLite. По нажатию на Item, производится выборка SQL запросом из БД. Результат выборки 1 строка. Далее свойство Text (или Cells у StringGrid) компонентов (Label - 6 шт., Button - 4 шт., StringGrid - 7х3, Memo - 1 шт.) на Form2 заполняются значениями из полей БД, выбранной записи. После этого вызывается Form2.Show; Поведение: Если открывать разные Item-ы, то в первые 3-4 раза открытия формы Form2 производится задержка до 4 секунд. Потом всё открывается быстро. Дополнительно: Закрытие формы Form2 процедурами Close или скрытие Hide, не влияет на скорость. Форма Create создается на этапе запуска приложения. Вопрос: Что за поведение такое? Есть ощущение, что iOS убивает форму Form2 и создает её заново, но после того как форма была открыта несколько раз, он перестает это делать. Я понимаю, если бы я первый раз открывал форму и при этом создавая её, но она то уже создана. Я даже отключал весь процесс заполнения данными, просто открываю форму, с незаполненными компонентами. Все равно такое же поведение. P.S. на Андроиде такое не наблюдается.
  21. Это происходит по той же причине, по какой, например, MS Word первый раз грузится относительно долго, а после его закрытия и повторного открытия загрузка происходит значительно быстрее. Все это понятно, но блин как-то это все раздражает
  22. Может кто подскажет. Запускаю приложение на iPhone, открываю всякие там формы, делаю выборки из БД, показываю и скрываю объекты. Если это делается первый раз, то это как-то медленно все выполняется, Если такая операция выполнялась ранее, то она выполняется быстро. То ли приложение постепенно выгружается в оперативку и оттуда работает, то ли я не пойму куда копать.
  23. А как запихнуть этот код в поток? что бы параллельно работала программа и скачивался файл. Пример можно в студию
  24. Перекочевали в ветку http://fire-monkey.ru/topic/1753-oshibki-i-kosiaki-delphi-xe10-seattle-i-xcode-7/page-2#entry11745
×
×
  • Создать...