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

gonzales

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

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

  • Посещение

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

    27

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

  1. вот засада. Google play требует api не ниже 26. Какой-то замкнутый круг(((
  2. Нашел причину, в API 26 формирование уведомления строится по другому. https://startandroid.ru/ru/uroki/vse-uroki-spiskom/515-urok-190-notifications-kanaly.html Перевел приложение на API 25 и все заработало как надо. Подозреваю, что для работы пушей в API 26 нужно обновить саму делфу. (у меня сейчас берлин)
  3. Нашел вот такую статейку, но не пойму, то это или нет https://stackoverflow.com/questions/43093260/notification-not-showing-in-oreo
  4. К сожалению нет, или я не знаю куда копать. В настройках телефона все уведомления включены, режим энергосбережения выключил, в общем сделал все рекомендации, что нашел в инете. Причем, в открытое приложение уведомления приходят. Протестировал еще на телефоне с 7-ым андроидом - все работает.
  5. gonzales

    PUSH и Android8

    Доброго времени суток! Сменил телефон и перестали приходить пуши при свернутой программе в андроид 8. На 5-ом все работает. Подозреваю, что не стартует сервис {$IF defined(ANDROID)} FPushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.GCM); FPushService.AppProps[TPushService.TAppPropNames.GCMAppID] := FAndroidServerKey; {$ENDIF} Может кто подскажет, в какую сторону копать? Заранее спасибо!
  6. gonzales

    OnMouseUp у TTrackBar

    Ну ответ понятен, тем не менее события OnMouseDown OnMouseUp на других контролах отрабатывают при тапе. Попробуйте! Неоднократно реализовывал таскалки контролов на форме.
  7. gonzales

    OnMouseUp у TTrackBar

    Доброго времени суток! Соответствующая тема уже была и в ней есть решение но она уже закрыта, поэтому создал новую. Вот такая штука TrackBar1.Thumb.OnMouseUp:=form16.TrackBar1MouseUp; прекрасно работает в винде, но не работает на Андроиде. На iOS не проверял. Может у кого есть другое решение. Нужно отловить отпускание мыши. OnClick как-то странно работает, не всегда корректно. Делфи 10.1 Заранее спасибо
  8. Такой же рецепт для XCode 10.1, который работает в MacOS Mojave (10.14)
  9. gonzales

    Отладка Indy

    угу((( буду копать
  10. gonzales

    Отладка Indy

    Они отличаются лишь возможностью задать кодировку стрима. Мне вообще нужна процедура DoRequest, на нее ссылаются и одна и вторая процедуры. Конфигурация Debug. Настройки DEbug на скрине.
  11. gonzales

    Отладка Indy

    Это я знаю. Парадокс в том, что я перехожу в процедуру в модуль из своего кода и пытаюсь ее отдебажить. Условно, вот код Stream:=TStringStream.Create; form1.IdHTTP1.URL.Host:='192.168.0.16'; form1.IdHTTP1.URL.Port:='554'; form1.IdHTTP1.URL.Username:='admin'; form1.IdHTTP1.URL.Password:='admin'; form1.IdHTTP1.URL.Protocol:='rtsp'; form1.IdHTTP1.Options('rtsp://admin:admin@192.168.0.16:554/live/ch00_0',Stream); Memo1.Lines.Add(Stream.DataString); Stream.Free; Я хочу посмотреть, как выполняется запрос OPTIONS. Тыкаю в него мышкой с Ctrl, попадаю в модуль idHTTP procedure TIdCustomHTTP.Options(AURL: string; AResponseContent: TStream); begin DoRequest(Id_HTTPMethodOptions, AURL, nil, AResponseContent, []); end; И на DoRequest breakpoint не ставится. Соответственно внутри DoRequest тоже некуда ставить точки остановки.
  12. gonzales

    Отладка Indy

    Доброго времени суток Столкнулся со странным поведением IDE Хочу посмотреть, что происходит внутри модуля idHTTP. Но не могу поставить точку остановки. Многие строки не подсвечиваются синим кружком. См скрин. Как-то можно это исправить? Заранее спасибо за ответы
  13. Доброго всем времени суток! Есть задача, считать с ip-камеры видеопоток в формате MJPEG но не по протоколу HTTP (это реализовано и работает), а по RTSP. RTSP очень похож на HTTP, тоже все передается в текстовом виде. Вот тут есть хорошая статья https://habr.com/post/117735/ По существу: мне нужно отправить на камеру запрос вида OPTIONS rtsp://192.168.0.254/jpeg RTSP/1.0 CSeq: 1 User-Agent: VLC media player (LIVE555 Streaming Media v2008.07.24) И возможно еще данные авторизации для камеры. Вот кусок (как говорят рабочий), написанный на питоне def __init__(self): self.config = {} self.wait_description = False def connectionMade(self): self.session = 1 # Authorization part if self.config['login']: authstring = 'Authorization: Basic ' + b64encode(self.config['login']+':'+self.config['pass']) + '\r\n' else: authstring = '' # send OPTIONS request to_send = """\ OPTIONS rtsp://""" + self.config['ip'] + self.config['request'] + """ RTSP/1.0\r """ + authstring + """CSeq: 1\r User-Agent: Python MJPEG Client\r \r """ self.transport.write(to_send) if debug: print 'We say:\n', to_send def dataReceived(self, data): if debug: print 'Server said:\n', data Вопрос, как это переписать на делфе. Пните пожалуйста в нужную сторону, как правильно послать запрос. Я так понимаю сначала нужно определить запрос form1.IdHTTP1.Request.Method:='OPTIONS'; form1.IdHTTP1.Request.URL:='rtsp://admin:admin@192.168.0.16:554/live/ch00_0 RTSP/1.0'; Как-то так. А вот как его послать, и приделать к нему дополнительные параметры не могу сообразить. Буду благодарен за любую помощь.
  14. Да, я даже нашел, что это были за элементы. По одному перетягивал в новый стиль и ждал появления ошибки. Это, кстати, может быть связано с тем, что у формы помимо стиля в дизайн-тайме присвоен fill-brush. Заметил, что когда цвет установлен стиль не применяется. Прикольно, попробую!!! То есть работаем не со стилем, а с конкретным объектом? Засада в том, что у меня динамические объекты и придется тогда их всех менять, это не совсем здорово.
  15. В общем те же яйца, только в профиль. Стиль применяется, но изменить его элемент не получается
  16. В смысле стиль применяется или меняется его элемент?
  17. Cannot find style resource for Android [16FB7AC0]{fmxstyledesigner240.bpl} FmxStyleController.TStyleController.PlatformToResourceName (Line 638, "FmxStyleController.pas" + 25) + $1E [16FB7FA5]{fmxstyledesigner240.bpl} FmxStyleController.TStyleController.ChangePlatform (Line 729, "FmxStyleController.pas" + 18) + $C [16FB69F7]{fmxstyledesigner240.bpl} FmxStyleController.TStyleController.Create (Line 248, "FmxStyleController.pas" + 35) + $9 [16FB2BEF]{fmxstyledesigner240.bpl} FmxStyleWindow.TStyleWindow.Create (Line 66, "FmxStyleWindow.pas" + 2) + $D [16FBF721]{fmxstyledesigner240.bpl} FmxStyleEditors.DesignStyleBook (Line 80, "FmxStyleEditors.pas" + 2) + $B [16FBF819]{fmxstyledesigner240.bpl} FmxStyleEditors.TResourceProperty.Edit (Line 97, "FmxStyleEditors.pas" + 2) + $A [209CBF8E]{coreide240.bpl} PropInsp.TPropertyInspector.PropListEditDblClick (Line 965, "PropInsp.pas" + 18) + $6 [21483051]{vclide240.bpl} IDEInspListBox.TInspListBox.DoEditDblClick (Line 626, "IDEInspListBox.pas" + 2) + $A [21484E4F]{vclide240.bpl} IDEInspListBox.TInspListBox.ListButtonClick (Line 1322, "IDEInspListBox.pas" + 2) + $2 [50AA409F]{vcl240.bpl } Vcl.Controls.TControl.Click (Line 7429, "Vcl.Controls.pas" + 9) + $8 [2147A5F6]{vclide240.bpl} IDEListBtns.TListButton.WMLButtonUp (Line 584, "IDEListBtns.pas" + ? + $11 [50AA3B32]{vcl240.bpl } Vcl.Controls.TControl.WndProc (Line 7313, "Vcl.Controls.pas" + 91) + $6 [0CDB514C]{TrackingSystem240.bpl} TrackingSystemHelp.CBTHookProc (Line 211, "TrackingSystemHelp.pas" + 27) + $F [50AA7E8B]{vcl240.bpl } Vcl.Controls.TWinControl.IsControlMouseMsg (Line 9906, "Vcl.Controls.pas" + 1) + $9 [50AA867D]{vcl240.bpl } Vcl.Controls.TWinControl.WndProc (Line 10143, "Vcl.Controls.pas" + 158) + $6 [50AA7C9C]{vcl240.bpl } Vcl.Controls.TWinControl.MainWndProc (Line 9850, "Vcl.Controls.pas" + 3) + $6 [50170DFC]{rtl240.bpl } System.Classes.StdWndProc (Line 17187, "System.Classes.pas" + ? + $0 [50BF0155]{vcl240.bpl } Vcl.Forms.TApplication.CancelHint (Line 11363, "Vcl.Forms.pas" + 6) + $D [50BEEDE7]{vcl240.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 10534, "Vcl.Forms.pas" + 23) + $1 [50BEEE2A]{vcl240.bpl } Vcl.Forms.TApplication.HandleMessage (Line 10564, "Vcl.Forms.pas" + 1) + $4 [50BEF15D]{vcl240.bpl } Vcl.Forms.TApplication.Run (Line 10702, "Vcl.Forms.pas" + 26) + $3
  18. при попытке открыть стиль для Андроида вылезает ошибка
  19. Может надо заполнить поле Platform? Form1.StyleBook1.Styles[0].Platform
  20. Нет у меня такого. Посмотрите, если не трудно. Файл в приложении mystyle.zip
  21. Может после внесения изменений в стиль его нужно как-то сохранить?
  22. У меня один стиль для всех платформ. Скрин приложил
  23. Так, одно и тоже приложение, естественно стиль подключен и структура элементов такая же. Сам стиль прекрасно отрабатывает, не удается именно поменять элемент в рантайме.
  24. Доброго времени суток. Столкнулся вот с какой задачей. В этой ветке достаточно много примеров доступа к элементам стиля. Примерно так это работает AObject := Form1.StyleBook1.Style.FindStyleResource('backgroundstyle'); if (AObject is TRectangle) then TRectangle(AObject).Fill.Color := strtoint(node.GetAttribute('BackgroundColor')); Form1.StyleLookup := 'backgroundstyle'; НО!!! Такой подход работает только для Винды. Под Андроидом ничего не происходит, цвет не меняется. Ответа пока не нашел, если у кого есть идеи, с удовольствием выслушаю! Заранее спасибо!
×
×
  • Создать...