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

Alex Bozhko

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

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

  • Посещение

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

    4

Активность репутации

  1. Like
    Alex Bozhko отреагировална OnePeople в Монополия   
    Делал чисто для себя! И только для своего удовольствия!
    Возможны ошибки!*(вернее точно есть))) 
    Графика не окончательная!
    Скриншоты сервер:
    Скриншоты клиент:
    Сервер на комп, клиент Android (должны находиться в одной сети)
    P/S И так как все устройства у меня Full HD, проверял только на них(
    Monopoly.rar
  2. Like
    Alex Bozhko отреагировална gonzales в Переезд на 10.3 Rio   
    Есть подозрение, что в 10.3. перестала работать функция Application.ProcessMessages. В 10.1 для Андроид она прекрасно работала, а теперь, как будто ее нет. Формы не перерисовываются, вовремя не отображаются те или иные вещи. На что можно заменить ее. Пример такой, создаю форму в рантайме и показываю ее пользователю. 
    Application.CreateForm(TForm27, Form27); Form27.ProgressBar1.Visible := false; Form27.StartUpLabel.Text := 'Ждите...'; Form27.Visible := true; Application.ProcessMessages;  На андроид в 10.3. форму не вижу, хотя остальной код отрабатывает.
  3. Like
    Alex Bozhko отреагировална Евгений Корепов в PUSH и Android8   
    Вроде все работает. Разрешений не нужно никаких вообще. До этого ошибочно требовало доступ к учетной записи - пофиксили.
    Код вроде остался прежним, вот кусок из живого проекта:
    procedure TFormMain.InitPushService; begin TTask.Run( procedure Var ADeviceID, ADeviceToken : String; begin FPushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.GCM); FPushService.AppProps[TPushService.TAppPropNames.GCMAppID] := ConstGCMAppID; if Assigned(FPushService) then begin FPushServiceConnection := TPushServiceConnection.Create(FPushService); FPushServiceConnection.OnChange := OnPushServiceConnectionChange; FPushServiceConnection.OnReceiveNotification := OnReceivePushNotificationEvent; FPushServiceConnection.Active := True; ADeviceID := FPushService.DeviceIDValue[TPushService.TDeviceIDNames.DeviceID]; ADeviceToken := FPushService.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken]; FSettings.Flags.PushServiceInited:=True; TThread.Synchronize(TThread.CurrentThread, procedure () begin FNetwork.DeviceID:=ADeviceID; FNetwork.DeviceToken:=ADeviceToken; FNetwork.SendFCMRegistration(); // ?????????????????????????????? Log('DeviceID: ' + FNetwork.DeviceID); Log('DeviceToken: ' + FNetwork.DeviceToken); end); end; end ); end; procedure TFormMain.OnPushServiceConnectionChange(Sender: TObject; AChange: TPushService.TChanges); begin TThread.Synchronize(TThread.CurrentThread, procedure () begin if TPushService.TChange.DeviceToken in AChange then begin if Assigned(FNetwork) then begin FNetwork.DeviceID := FPushService.DeviceIDValue[TPushService.TDeviceIDNames.DeviceID]; FNetwork.DeviceToken := FPushService.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken]; Log('DeviceID: ' + FNetwork.DeviceID); Log('DeviceToken: ' + FNetwork.DeviceToken); FNetwork.SendFCMRegistration(); end; end; end ); end; procedure TFormMain.OnReceivePushNotificationEvent(Sender: TObject; const ANotification: TPushServiceNotification); var AMessageSection : String; begin if Assigned(ANotification.Json) then begin Log('Push Message Json'); Log(ANotification.Json.ToString); if ANotification.Json.TryGetValue('message_section', AMessageSection) then begin if AMessageSection.Equals('support') then SetActiveTab(ConstSectionSupport); if AMessageSection.Equals('news') then SetActiveTab(ConstSectionNews); if AMessageSection.Equals('info') then SetActiveTab(ConstSectionInfo); if AMessageSection.Equals('services') then SetActiveTab(ConstSectionServices); end else if FSettings.CurrentSection <> ConstSectionSupport then SetActiveTab(ConstSectionSupport) else WebBrowserCallJS(TCallJS.SupportLoadContent); PlaySoundEffects(1); end; end; procedure TFormMain.CheckStartupNotifications(); var CurNotification : TPushServiceNotification; begin if Length(FPushService.StartupNotifications) > 0 then for CurNotification in FPushService.StartupNotifications do if Assigned(CurNotification) then OnReceivePushNotificationEvent(Self, CurNotification); NotificationCenter.CancelAll; end; Метод FNetwork.SendFCMRegistration() отсылает регистрацию на мой сервер. В методе проверяется получение регистрации и факт отсылки (он может вызываться несколько раз у меня)
  4. Like
  5. Thanks
    Alex Bozhko отреагировална dmokrushin123 в Отправка пуша из консоли firebase   
    Это вопрос только Android и из-за того что используется совместно FCM и GCM.
    Необходимо продублировать заголовок и сообщение в пользовательские данные:
    message - мое сообщение title - мой заголовок
  6. Like
    Alex Bozhko отреагировална Akad в [Вебинар] FGX Native. Новейшая кроссплатформенная платформа для мобильной разработки на Delphi   
    А есть какие-нибудь демки? Главное, что бы хеловорд apk не весил 5-10Мб и не тормозил на старых аппаратах безбожно, как FMX. И что с сервисами под андроид?
     
  7. Like
    Alex Bozhko отреагировална Brovin Yaroslav в [Вебинар] FGX Native. Новейшая кроссплатформенная платформа для мобильной разработки на Delphi   
    FGX Native полностью независимый от FMX фреймворк на мобильных платформах. Однако, все невизуальные компоненты будут доступны (уведомления, работа с БД, REST API и тд). Прежде всего это сделано, поскольку архитектура FMX не рассчитана для производительной работы с нативными контролами. Под этим я подразумеваю ряд взаимодействий с системой, которые жестко сидят в ядре FMX (работа с текстом, система событий OnMouseXXX, принцип отрисовки, завязка на старое API и многое другое). Помимо этого, разработка мобильного приложения кардинально отличается от разработки приложения для настольных платформ из-за разных подходов к проектированию интерфейсов и заканчивая принципиально разными и специфичными компонентами. 
    Кстати, первая экспериментальная версия FGX Native (которая так и осталась не опубликованной) была построена мною на базе FMX. Однако эксперименты на практике показали, что такой подход тупиковый и ведет к значительному усложнению системы без адекватной выгоды для пользователей. А большая зависимость от FMX является для меня потенциальным риском быть связанным по рукам от ошибок. Поэтому было принято решение сделать FGX Native полностью независимым. За год работы была реализована (и продолжает реализовываться) платформа и совершенно новый и дизайнер форм с нуля. Это дает мне большую гибкость в расширение функционала, как самой библиотеки, так и дизайнера. Имея свой дизайнер, я могу реализовать любую идею, которая повысит удобство пользователя при работе с библиотекой.
    А вообще это тема интересная и я постараюсь немного рассказать про это на вебинаре.
    Частично информация освещается на официальном телеграмм канале https://t.me/cross_delphi, где я с недавнего времени стал публиковать процесс текущий разработок по библиотеке.
  8. Thanks
    Alex Bozhko отреагировална haword в [Андроид]не видно картинки   
    в делфи делается так - 
                        li:= lv.Items.Add;
                        lii:=li.Objects.FindObjectT<TListItemImage>('Image');
                        lii.OwnsBitmap:=True;
    далее можно грузить картинку, если в потоке то 
                TThread.Synchronize(TThread.CurrentThread, procedure()
                begin
                   // присваивание битмапу картинки 
                            lii.Bitmap:= TBitmap.Create;
                            lii.Bitmap.SetSize(ItemBitmap.Width, ItemBitmap.Height);
                            lii.Bitmap.Clear(TAlphaColors.Null);
                            lii.Bitmap.CopyFromBitmap(ItemBitmap);
                   
                end
                );
  9. Like
    Alex Bozhko отреагировална FeLDMARShaL в [FGX] Будет ли релиз FGX под Tokyo?   
    Будет ли реализованна поддержка новой версии Delphi?
    Ну и любимый вопрос для разработчика ... хотя бы примерные сроки, ну или хотя бы на како этапе сейчас развитие проекта?
  10. Like
    Alex Bozhko отреагировална Andrey Efimov в XE10.2 Tokyo есть запись вебинара от 28.03.2017?   
    Запись вебинара
  11. Like
    Alex Bozhko получил реакцию от Andrey Efimov в Одинаковые логотипы и картинки   
    Публиковали три редакции одного приложения. Одинаковым было всё, кроме описания. Проблем не было вообще.
  12. Like
    Alex Bozhko получил реакцию от Kitty в Одинаковые логотипы и картинки   
    Публиковали три редакции одного приложения. Одинаковым было всё, кроме описания. Проблем не было вообще.
  13. Like
    Alex Bozhko отреагировална Равиль Зарипов (ZuBy) в [Статья] Онлайн-сервисы в помощь разработчику по дизайну   
    Ссылка: http://blog.rzaripov.kz/2017/01/blog-post.html
    Автор: Зарипов Равиль @ZuBy
    Описание: Онлайн-сервисы в помощь разработчику по дизайну
     
     
  14. Like
    Alex Bozhko отреагировална haword в Перспективы RAD   
    не в сиетле не в берлине не нормлаьного DBGrid. да сторонние смотрел, tms, других то нет. хотя есть один, работающий с tdatasource но он глючный. да и когда я пробывал был xe7 и мало что вообще было под fmx. кстати берлин еще не поставил. 
    я про что говорю - про совместимость компонентов vcl и fmx а не про полную замену их логики работы. 
    нету там ничего такого. можно запросто. я уже пытался портитровать dbgrid, работало, но вылезла проблема в скорости прорисовки ячеек грида. думаю обычные контролы типа эдитов чекбосов да лейблов будут пахать без проблем. 
  15. Like
    Alex Bozhko получил реакцию от Rusland в Перспективы RAD   
    Вставлю свои пять копеек.
    Про изначально не понравилось в FireMonkey...
    Да, действительно, сначала было как у классика - "Да ты же, парень, прыгаешь в длину!" Т. е. брал Андроид и лепил десктопное приложение под него. Потом пришло понимание того, что так делать не надо. Взял тот же Андроид и начал смотреть, а как же там сделан GUI. После этого как-то отпала необходимость в гридах и прочих прелестях VCL. а вот не нравится то, что LiveBinding использовать невозможно. в принципе. Т. е. сейчас я ручками заполняю контролы из датасетов, и опять же ручками обрабатываю. Не сложно, но долго. Даже возникла идея, а не вооружиться ли старыми мануалами и не написать ли свои db-aware контролы. Отсюда сразу вопрос, нет ли каких-то принципиальных ограничений для этого? Почему пока есть  только одна реализация чего-то подобного, которая нереальных денег стоит.
    Вторая вещь, которая мне не нравится, скорее организационная. Отсутствие преемственности кода. Вот ни разу не удалось запустить приложение, собранное на предыдущей версии FM без каких-либо правок. ну, да ладно.
    Потом я немного полистал литературу по Android Studio. И вот теперь задумался. Ведь FM приложения они по архитектуре несколько отличаются... А действительно, можно ли на FM написать всё то, что можно сделать в той же Андроид Студии? ну, пусть не сейчас, пусть в перспективе. Т.е. возможно ли это в принципе? Или это жертва, которую придётся приносить на алтарь кросс-платформенности?
     
  16. Like
    Alex Bozhko получил реакцию от AngryOwl в Перспективы RAD   
    Вставлю свои пять копеек.
    Про изначально не понравилось в FireMonkey...
    Да, действительно, сначала было как у классика - "Да ты же, парень, прыгаешь в длину!" Т. е. брал Андроид и лепил десктопное приложение под него. Потом пришло понимание того, что так делать не надо. Взял тот же Андроид и начал смотреть, а как же там сделан GUI. После этого как-то отпала необходимость в гридах и прочих прелестях VCL. а вот не нравится то, что LiveBinding использовать невозможно. в принципе. Т. е. сейчас я ручками заполняю контролы из датасетов, и опять же ручками обрабатываю. Не сложно, но долго. Даже возникла идея, а не вооружиться ли старыми мануалами и не написать ли свои db-aware контролы. Отсюда сразу вопрос, нет ли каких-то принципиальных ограничений для этого? Почему пока есть  только одна реализация чего-то подобного, которая нереальных денег стоит.
    Вторая вещь, которая мне не нравится, скорее организационная. Отсутствие преемственности кода. Вот ни разу не удалось запустить приложение, собранное на предыдущей версии FM без каких-либо правок. ну, да ладно.
    Потом я немного полистал литературу по Android Studio. И вот теперь задумался. Ведь FM приложения они по архитектуре несколько отличаются... А действительно, можно ли на FM написать всё то, что можно сделать в той же Андроид Студии? ну, пусть не сейчас, пусть в перспективе. Т.е. возможно ли это в принципе? Или это жертва, которую придётся приносить на алтарь кросс-платформенности?
     
  17. Like
    Alex Bozhko отреагировална rareMax в Перспективы RAD   
    Кто-то ждет что делфи "оживет", а кто-то пишет на ней и радуется жизни. 
  18. Like
    Alex Bozhko отреагировална Error в Сходка в Питере   
    По первому фото слева на право:
    @kami @Brovin Yaroslav @RoschinSpb @Error


  19. Like
    Alex Bozhko отреагировална ElenaS. в С новым кодом!   
    Друзья! Fast Reports и я лично поздравляем вас с наступающими праздниками! 
    Искреннейше желаем вам безбажного года и интересных проектов!
    А еще, в связи с праздниками у нас скидка на ВСЕ продукты аж 50% вот здесь! С нетерпением ждем вас в стройных рядах наших кастомеров!
    Напоминаю, что если вы испытываете трудности в работе с нашими компонентами - мы будем рады помочь вам на страницах форума!
    Команда FR
  20. Like
    Alex Bozhko получил реакцию от AngryOwl в Перспективы RAD   
    Если компанию собираются продавать, то обычно увеличивают её капитализацию. а самый простой способ это сделать - набрать побольше сотрудников. Так что нет, не думаю. Да и банально кому нужен продукт без разрабов.
  21. Like
    Alex Bozhko отреагировална ASovtsov в Перспективы RAD   
    Коллеги, 
    Приглашаю всех прийти на ближайший вебинар по RAD Studio 10.1 Berlin Update 2 и задать там вопросы. Я оставлю больше времени для ответов, и мы сможем обсудить более подробно большинство из поднятых здесь тем. 
  22. Like
    Alex Bozhko отреагировална Brovin Yaroslav в Перспективы RAD   
    Я прокомментирую, но чуть попозже. Обязательно отвечу на все вопросы. 
    На самый главный вопрос на счет форума. Сразу отвечу, форум будет работать в любом случае.
  23. Like
    Alex Bozhko отреагировална Kitty в Благодраность   
    Большое спасибо Ярославу, что находит время и фиксит проблемы, которые мы тут поднимаем. И курсы его великолепные!
    Спасибо профессионалам, таким как ZuBy, который терпит наши глупые вопросы и помогает.
    СПАСИБО!!!
  24. Like
    Alex Bozhko отреагировална Pax Beach в Открытие окна настроек Wi-Fi, Способ определения координат   
    Сделал пример в одном проекте включения/выключения Wi-Fi, переход к настройкам местоположения и опрос статуса датчика location.
    Качайте, кому нужно.
     
    TestWifi.zip
  25. Like
    Alex Bozhko отреагировална Andrey Efimov в Какие статьи вы хотели бы видеть в блогах?   
    Написал статейку по вашей теме [Google Play] Публикация приложения в Google Play
×
×
  • Создать...