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

uuxyyz

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

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

  • Посещение

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

  1. Сталкивались с той же фигней, метод отвечающий за мутацию URL, кривой как ни крути, в частности мы не могли передать локальному HTML файлу параметры, т.к там проверяется существование файла и конструкции типа index.html?type=1 не работают, зачем это нужно было делать не ясно... Положите исправленный файл в корневую папку вашего приложения.

    AdHoc

     

    Доброго времени сутки

    Подскажите пожалуйста как создать проект adHoc уже 2 недели борюсь ничего не получается вроде все ок и ipa файл получаю вроде все правильно делаю но из iTunes не могу загрузить в телефоне этот файл начинает установку и под конец останавливается а когда пробую загрузить этот же файл через Application Loader для тестеров Testfligth у меня выскакивает ошибка про которого уже говорили в этом форуме но решении не было найдено заранее всем спасибо

    А подписываешь правильным сертификатом? Для телефона, который зарегистрировал на сайте аппл для разработчиков?

     

    Соглашаюсь всеми клетками... 90% дело в сертификате, вторая причина компилите на D7, на устройстве iOS > 8.1

  2. А как вы определяете факт неосвобождения памяти?

    Какими инструментами пользуетесь?

    в IOS логами, т.к у меня iOS 8.1 на нем не пашет debug server с последним X-Code. iOS выкидывает приложение с причной LargestProcess и 177 тысячами захваченных страниц.

    В androide тупо диспетчером задач... 

  3. Вести с полей, для интересующихся, сочувствующих и сомневающихся. 

    Простой пример, форма с FDConn, FDQuery и сапортов в составе FDPhysSQLiteDriverLink и FDGUIxWaitCursor. У всех все по-умолчанию. 

    Таблица вида:

    CREATE TABLE `Files` (
    `ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
    `OwnerID` INTEGER NOT NULL,
    `Owner` TEXT NOT NULL,
    `Version` INTEGER NOT NULL,
    `Name` TEXT NOT NULL,
    `Name` TEXT NOT NULL,
    `Size` INTEGER NOT NULL,
    `BeginDWTime` INTEGER NOT NULL,
    `EndDWDate` INTEGER NOT NULL,
    `isDWComplete` INTEGER NOT NULL,
    `isInstalled` INTEGER NOT NULL,
    `DCP` TEXT NOT NULL,
    `BCP` TEXT NOT NULL,
    `RP` TEXT NOT NULL,
    `isDA` INTEGER NOT NULL,
    `Rank` INTEGER NOT NULL,
    `ServerID` INTEGER NOT NULL
    );

    FDQuery.SQL.Text = 'SELECT * FROM Files' В таблице 697 записей.

     

    Код:

    var
      i: Integer;
    begin
      for i := 0 to 999 do
      begin
        FDQuery.Open;
        try
    
        finally
          FDQuery.Close;
        end;
      end;

    Дает и не освобождает 7 мб. памяти в ос Андройд... в iOS потери еще больше!

  4. да

     

    DisposeOf разрушит у объекта внутренние связи, которые как раз и накручивают рефкаунт. После DisposeOf обнулите все ссылки которые вы создали на объект сами и все должно быть ок.

    ReportMemoryLeaksOnShutdown := True;
    

    Так проверьте.

    Для android и IOS как мне видится это не работает, а если и рабоатет то ничего не показывает, хотя логи IOS говорят об обратном. В виндах с учетом специфики деструкторов - все в норме... 

  5. Немного не понял почему может не спасать DisposeOf, метод же 100% вызывает деструктор класса.

    Абсолютно верно, деструктор он вызывает, но память будет освобождена только когда refcount объекта опустится до ноля. Т.е при вызове DisposeOf программа проживет дольше и часть памяти будет отдано назад но не вся!

  6. Коллеги добрый день. Кто-нибудь проверял, как дела с TFDQuery.Free в мобильных ОС?

    У меня по факту:

    После создания объекта (после вызова inherited Create) refcount 5 (работаем с Owner = nil)

    перед вызовом Free  - 5, соответственно деструктор не вызовется!

     

    DisposeOf не спасает, т.к на каждый запрос создается свой экземпляр объекта TFDQuery, через некоторое время IOS нас вырубает за исчерпание страниц, ну беда... 

    Бегло посмотрел код FireDac и Data.DB, вроде везде стоит Weak, но блииннн:

    type
      TFDLockedQuery = class(TFDQuery)
    ...
    constructor TFDLockedQuery.Create(ALock: TMutex);
    begin
      inherited Create(nil);
      // уже тут refcount 5!!! 
    end;

    Как рушить то его?, решал кто нибудь?

    (UPD)PS: Речь идет о DelphiXE7 upd2

  7.  

    XE8 Ent.

    Установил Lockbox 2 и 3 с помощью Getit.

    Оба работают на всех платформах кроме ios64.

    Это и меня ошибка или в библиотеках???

    Это не ошибка. Наведи на любой компонент Lockbox, всплывающий хинт покажет платформы, для которых будет компилироваться, 64 iOs, там нет.

     

    Вот это печаль... ну ладно может обновят

  8. Кривая реализация стандарта может очень сильно ударить по стойкости шифрования.

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

  9. Результаты которые выдает ЛокБокс, не будут совпадать с остальными, не ясно почему, но ребята из локбокс не совсем верно реализовали алгоритм дополнения\обрезки блока (он работает, но реализован не так как описано в алгоритмах шифрования). Мы свою серверную часть написанную на C# фактически подгоняли под это безобразие.

  10. В общем эта беда только с Ad hoc. Залил для AppStore в iTunesConnect, кстати вручную пришлось добивать строку в Entitlements для того чтобы работал TestFlight, и нет никаких ошибок, и исчезло идиотское сообщение о том что я билдил проект на бета XCode ил SDK.

    Поздравляю с победой, что за строку если не секрет?

  11.  

    Первым делом, наше приложение под 64IOS не собралось, линковщик не находит libsqllite3, собственно после этого тестировать перестали.

     

     

    Тут что-то пишут похожее:

    http://www.fmxexpress.com/workaround-for-e2597-file-not-found-libsqlite-a-in-delphi-xe8-firemonkey-on-ios64/

     

    Верно, вчера устроили небольшую переписку по этому поводу в QC.

    Тут полная история :)

    http://fire-monkey.ru/topic/1125-xe8-ios64-firedac-sborka/

  12. Оказывается по неизвестной причине указанную библиотеку (libsqlite.a) не ставит установщик DelphiXE8, а установщик RadStudioXE8 ставит!

    Таким образом скачав RadStudio все начало собираться, осадок остался. Сколько будет стоить upgrade вопрос, как я понимаю обновления для 7 не будет. 

    Всем удачи!

  13. Коллеги, добрый день. Отписался сегодня по выходу XE8, но решили таки продолжить мытарства. Вопрос, кто нибудь может подсказать, как собрать 64 битное IOS приложение? Сегодня установили XE8, линковщик требует libsqlite3.a и все. 

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