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

xenon54

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

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

  • Посещение

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

    14

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

  1. Ну тут все просто. Remote Push Notification. Вот, хороший видос на эту тему для ведра тынц И сервис никакой не нужен. Для ведра это называется "Google Cloud Messaging"
  2. Можно пульнуть POST без параметров и посмотреть, придет ли контент. Я так понял у автора вопрос именно про то что вообще запросы не проходят, а не какой-то конкретный случай. А если всетаки какой-то конкретный случай запросов рассматривается, тот тут FireMonkey ну прям совсем не пахнет...
  3. Вообще тут нужно по шагам искать. Я для себя написал такую штуку: function log_all_requests() { ob_start(); var_dump($_GET); $output = ob_get_clean(); file_put_contents("log_all_requests.txt", "+++++actions.php++++" . "\r\n", FILE_APPEND); file_put_contents("log_all_requests.txt", "[GET]" . "\r\n", FILE_APPEND); file_put_contents("log_all_requests.txt", $output . "\r\n\r\n", FILE_APPEND); ob_start(); var_dump($_POST); $output = ob_get_clean(); file_put_contents("log_all_requests.txt", "[POST]" . "\r\n", FILE_APPEND); file_put_contents("log_all_requests.txt", $output . "\r\n\r\n", FILE_APPEND); ob_start(); var_dump($_SESSION); $output = ob_get_clean(); file_put_contents("log_all_requests.txt", "[SESSION]" . "\r\n", FILE_APPEND); file_put_contents("log_all_requests.txt", $output . "\r\n\r\n", FILE_APPEND); file_put_contents("log_all_requests.txt", "--------------------" . "\r\n\r\n", FILE_APPEND); return false; } Как минимум так вы сможете увидеть точно, приходит ли запрос на сервер. И я соглашусь с haword'ом, покажите Response := fMain.IdHTTP1.Post(aURL, Params); aURL какой вписываете? Ну и естественно, для начала нужно попробовать самому зайти с таким URLом на страницу через браузер.
  4. Воткнув сюда такую колбасу кода, ты отпугиваешь тех кто потенциально мог бы помочь тебе. Постарайся минимизировать свой код, не нужна полная форма с сайта, сделай простейшую форму и простейший запрос и если не будет работать, то пости что там у тебя, а с такой колбасой даже глаза не хотят смотреть. Не потому что лень, а потому что много времени нужно чтобы вникать в то, во что вникать для того чтобы помочь ненужно.
  5. БД в приложении? Данные как меняются, кто инициирует изменение данных?
  6. В общем эта беда только с Ad hoc. Залил для AppStore в iTunesConnect, кстати вручную пришлось добивать строку в Entitlements для того чтобы работал TestFlight, и нет никаких ошибок, и исчезло идиотское сообщение о том что я билдил проект на бета XCode ил SDK.
  7. Нашел в инете что проблема именно с телефонами. Если в проекте выставить что приложение только для планшетов, то оно проходит верификацию и заливается в itunes connect. Но нужен как раз таки телефон Хз, мб Ярослав что-то знает по этому поводу...
  8. Ну я в паре троек мест нашел, что у кого-то тоже самое, но решений нигде нет
  9. SDK 8.2, с 90094 чет никак не справлюсь... И не пойму какого хрена он пишет что у меня SDK или XCode betta, нихрена не бетта же...
  10. В общем суть в том что все новые проекты, которые появились после 1 февраля (не были ранее залиты в app store) должны иметь в своем составе обе версии ( armv7 + armv64). Для того чтобы сделать это в XE8 нужно зайти в опции проекта -> Delphi Compiler -> Compiling -> Other options -> "Generate iOS universal binary file (armv7 + arm64)" и выставить это свойство в "true". Попрошу заметить, что в проекте должен быть выбран 64 битный вариант, если выбрать 32 битный, то этого свойства в опциях проекта нет. Осталось решить вопрос с ошибкой 90094
  11. Ошибка 90179 решилась. Distribution сертификат был просрочен. Меня больше всего беспокоит ошибка 90086 или 90092. Среда позволяет компилить либо 32 либо 64, а требуется чтобы было и то и то ( это как я понял). Неужели с этой версией среды вообще не получится залить приложение в itunes connect или в appstore...
  12. Вот скрин ошибок если пытаться залить 32 битную версию:
  13. Здравствуйте. XE8 создал пустой проект, сделал сертификаты для него в опциях проекта выбрал сертификат и профиль и создал .ipa файл (configuration Ad hoc). Пробую его залить через Application Loader в Itunes connect и он мне там пишет что со 2 февраля установочный пакет должен содержать поддержку 64 версии. Ок, компилю проект с 64 битной версией и пытаюсь залить. Результат на скрине: Как я понял 3 строка намекает на то что в пакете должны содержаться обе версии и 32 и 64... А вообще мне все 3 ошибки не понятно как устранить
  14. Порекомендовал бы вам использовать событие "ItemClickEx", в обычном "ItemClick" после очистки списка вылетает AV. после завершения события и перехода к if AItem <> nil then AItem.SyncCheckedState; А по поводу многократного срабатывания писал выше:
  15. Понятие фокуса на итеме не совсем уместно, т.к. итемы в ListView не являются контролами. У листвью есть Selected. А насчет ваших подкатегорий сложно гадать, т.к. не видно что вы делаете в "loadcat". В любом вопросе вы должны указать что вы хотите, что получается и что вы делаете. Я правильно понимаю, что изначально у вас заполнен ListView, потом по клику на итем список одолжен чищаться и заполняться новыми элементами? А на деле у вас после этого еще раз срабатывает клик ивент и список соответственно еще раз заполняется? Если это бывает не всегда, то я бы для начала порекомендовал поставить счетчик на ивенте OnMouseDown, не нажимаете ли вы иногда действительно 2 раза. Если проблема в этом, то можно, например, на время обработки клика по элементу снять обработчик событий с итемклика, а по завершении вернуть его на место.
  16. Вынесение в отдельный поток помагает выполнять этот запрос не дожидаясь ответа. Но на работу таймаута это не влияет.
  17. Честно говоря, я не особо разбирался почему с EIdException выполнение кода заходит в блок исключений, а без нет. Но подозрительно что у всех работает, а у вас нет. Я думаю 8 пост в этой теме намекает на то что это не мои бредни которые я сам придумал, а такова работа инди. Попробуйте на пустом проекте. Вот еще одна возможная причина:
  18. В общем если кто-то будет искать, то вот такой позорный костыль капельку улучшает ситуацию: if ((NewViewportPosition.Y+MemoInheritor.Height)- round(MemoInheritor.GetContentBounds.Height)) = 2 then MemoInheritor.ViewportPosition := TPointF.Create(MemoInheritor.ViewportPosition.X, MemoInheritor.ViewportPosition.Y+2); Этот код в событии "OnViewportPositionChange", MemoInheritor - наследник TMemo.
  19. image1.bitmap.Canvas.BeginScene(); Image1.bitmap.Canvas.FillText(TRectF.Create(0,0,1000,1000),'1234567890',True,1,[],TTextAlign.Leading); Image1.bitmap.Canvas.EndScene();
  20. В IOS, например, чтобы в приложение передавались события нажатия кнопок плеера (плей, стоп, вперед, назад, и т.д.) нужно зарегистрировать обрабочтик событий ремоут контрол, ну и соответственно написать сам обработчик. Мб с ведром тоже самое... Но это лишь предположение.
  21. Выше же написано. Используйте on E : EIdException.
  22. В событии OnMouseLeave используется анимация, которая использует "Application.ProcessMessages;".
  23. В любом контроле, к примеру в кнопке в событии "MouseLeave" пишу просто одну строку "Application.ProcessMessages;" и получаю AV если быстро провести по контролу мышой. Это под Windows. На IOS тоже самое, если нажать на контрол и не отпуская пальца вывести его за пределы контрола, так чтобы сработало событие "MouseLeave", получаю AV. Кто-нибудь знает в чем фишка?
  24. Мурашки по коже от таких костылей На самом деле нужно найти где неправильно происходит расчет автоскрола и поправить его. Только вот пока не удается толково это сделать, т.к. видимо проблема даже не в TMemo, а в TCustomScrollBox, но это пока догадка...
×
×
  • Создать...