Jump to content

Анонс 1.9.4.0


Yaroslav Brovin

155 views

Скоро выйдет релиз 1.9.4.0 с интересными и полезными нововведениями для наших пользователей. Обо все по порядку.

Push-уведомления

Если вы уже использовали push-уведомления в своих приложениях, то, возможно, вы обратили внимание, что архитектура сервисов push-уведомлений в RTL с одной стороны довольно гибкая, с другой стороны требует написание определенного количество лишнего кода, которого можно было бы избежать. По этой причине мы разработали новый компонент для работы с push-уведомлениями TfgPushNotificationService. Это высокоуровневая обертка на абстракциями push-сервисов в RTL, которая облегчает работу с уведомлениями в приложении FGX Native.

image.png  image.png 

Для того, чтобы начать принимать push-уведомления в вашем приложении достаточно:

  1. Выполнить первичную настройку сервисов (Firebase для Android или Apple Push Notification Service для iOS).
  2. Бросить компонент на форму и написать обработчик для события OnPushNotificationReceived, которое вызывается при приеме уведомления.

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

  • ServiceName - это название сервиса push-уведомлений, которые реализован в библиотеке. 
    • "fcm" - сервис по приему уведомлений через Firebase (Android)
    • "aps" - сервис по приему уведомлений через Apple Push Notification Service (iOS).
    • "Default" - автоматический выбор сервиса в зависимости от текущей платформы. Для Android - "fcm", для iOS - "aps". 

Мы обновили демо проект по использованию push-уведомлений: "Push-уведомления" -> "Получение Push-уведомления".

Помимо этого мы полностью отладили реализацию Push-уведомлений для iOS и теперь вы можете использовать ее в своих приложениях.

photo_2021-03-27_18-10-30.jpg photo_2021-03-27_18-10-15.jpg

TfgPageControl (важно!)

В этом обновлении мы пересмотрели работу событий OnChanged и OnPageSelected. Теперь эти события вызываются только при смене вкладок пользователем интерактивным путем. События не срабатывают при любом программном изменении вкладок (добавление, удаление, очистка, переключение и тд). Поэтому, если у вас есть логика, которая основывается на постоянном вызове этих событий при любых изменения (интерактивных и программных), то во всех местах, где вы выполняете программное изменение вкладок, вам необходимо вызвать вручную новый метод TfgPageControl.Changed, это приведет к немедленному срабатыванию данных событий. 

В таком подходе есть много достоинств:

  • Защита от рекурсивных вызовов. Если при переключении вкладок, вы выполняете добавление/удаление или изменение вкладок, то такие изменения могли приводить к рекурсивному срабатыванию этих событий, что в конечном итоге обычно решается введением дополнительного флаг на для отслеживания таких изменений.
  • Сокращение числа вызовов этих событий на любые изменения вкладок. Раньше любое добавлении/удалении вкладки, могло приводить к срабатыванию этих событий, даже когда это реально не нужно.

TfgCollectionView и TfgListMenu

Очень часто вы задавали вопросы о том, как детальнее настроить работу компонента TfgListMenu. В релизе 1.9.0.0 мы добавили ряд настроек для управления цветовой схемой данного компонента. А для тех, кому и этого не хватает, мы специально мигрировать все шаблоны стилей пунктов меню из TfgListMenu в TfgCollectionView. Новые шаблоны доступны в контекстном меню компонента TfgCollectionView -> Add Style -> Menu.

image.png

Все стили приведены на скриншоте ниже:

image.png

TfgVideoControl

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

TfgPhoneDialer

Мы так же реализовали TfgPhoneDialer для iOS.

Всем спасибо за внимание и хороших выходных .

  • Like 10
  • Thanks 1

0 Comments


Recommended Comments

There are no comments to display.

Guest
Add a comment...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...