Перейти к содержанию

Что нового в версии библиотеки для iOS🔗

v6.19.0 Release (17-01-2025)🔗

В данной версии:

Модуль MRGService:

  • Улучшена работа SDK во Вьетнаме.

Модуль Advertising:

  • Улучшена загрузка рекламы для URL не содержащих расширения файла

Подробнее о новых функциях и их использовании читайте в документации.


v6.18.0 Release (15-11-2024)🔗

В данной версии:

Модуль MRGService:

  • Исправлена работа logger, теперь сообщения в консоли не будут обрезаться до 1024 символов

Модуль Bank:

  • Добавлены новые функции для открытия нового системного окна с интерфейсом для выбора и покупки подписок. Окно можно открыть передав groupId для показа группы подписок или передать массив id продуктов которые необходимо показать.

Модуль Recommendations:

  • Добавлен новый тип события для Recsys - geo pricing.

Подробнее о новых функциях и их использовании читайте в документации.


v6.17.3 Release (25-10-2024)🔗

В данной версии:

Модуль Advertising:

  • Исправлена ошибка отображения рекламы в случае, если с сервера был получен URL с параметрами

Подробнее о новых функциях и их использовании читайте в документации.


v6.17.2 Release (05-10-2024)🔗

В данной версии:

Модуль MRGService:

  • Минимальная версия XCode, необходимая для сборки повышена до 15.2
  • Добавлен сбор информации о версии XCode, которым было собрано приложение

Модуль Analytics:

  • Обновлен AppsflyerSDK с 6.15.1 до 6.15.3.

Модуль Bank:

  • Исправлен краш MRGSBankProduct.init (мог возникать при попытке купить товар с включенным запретом на платежи)

Модуль Didomi:

  • Обновлен Didomi SDK c 2.11.1 до 2.13.0.

Модуль Firebase:

  • Обновлен Firebase SDK c 10.29.0 до 11.2.0.

Модуль Ironsource-Adapter:

  • Исправлена версия зависимости Ironsource в pod файле для поддержки версий Ironsource 8+

Подробнее о новых функциях и их использовании читайте в документации.


v6.17.1 Release (06-09-2024)🔗

В данной версии:

Модуль MRGService:

  • Удалена зависимость от iAd SDK, из-за которой возникали проблемы со сборкой на XCode 16.

Модуль Authentication-VKID:

  • Добавлена поддержка поля email при авторизации.

Модуль Analytics:

  • Добавлено новое значение waitForTCF для события mrgs_dma_start.

Подробнее о новых функциях и их использовании читайте в документации.


v6.17.0 Release (29-08-2024)🔗

В данной версии:

Модуль MRGService:

  • Добавлен новый ключ MRGSTrackerMediationNetwork.ToponPte для кастомных логов.
  • Улучшена работа с OpenUDID - отключена генерация до старта sdk, добавлено сохранение в Keychain для получения значения при установке заново

Модуль Analytics:

  • Обновлен AppsFlyer SDK c 6.14.3 до 6.15.1.

Модуль Advertising:

  • Исправлен crash при показе рекламы из Ironsource 8.x

Модуль Didomi:

  • Обновлен Didomi SDK c 2.8.0 до 2.11.1.

Модуль Firebase:

  • Обновлен Firebase SDK c 10.27.0 до 10.29.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.16.1 Release (02-07-2024)🔗

В данной версии:

Модуль MRGService:

  • Добавлена внутренняя поддержка переключения хостов, на случай если некоторые страны блокируют доступы к MRGS ресурсам.

Подробнее о новых функциях и их использовании читайте в документации.


v6.16.0 Release (13-06-2024)🔗

В данной версии:

Модуль Authentication:

  • Добавлен асинхронный метод isLoggedIn для более точной проверки состояния.

Подробнее о новых функциях и их использовании читайте в документации.


v6.15.1 Release (11-06-2024)🔗

В данной версии:

Модуль Bank:

  • Добавлено автоматическое закрытие TopUp (WebView) при успешной покупке
  • Исправлен краш при восстановлении незавершенной покупки на следующем запуске

Модуль Didomi:

  • Обновлен Didomi SDK c 2.5.0 до 2.8.0.

Модуль Firebase:

  • Обновлен Firebase SDK c 10.24.0 до 10.27.0.

Модуль GDPR:

  • Добавлена поддержка новых библиотек для CCPA - Moloco и BigoAds

Подробнее о новых функциях и их использовании читайте в документации.


v6.15.0 Release (28-05-2024)🔗

В данной версии:

Модуль MRGService:

  • Исправлен краш Collection was mutated while being enumerated. в MRGSModulesManager

Модуль Authentication (Facebook):

  • Используемая версия Graph Api поднята до 19

Модуль Bank:

  • Добавлены новые поля isSandbox (сделан ли платеж в тестовом окружении) и usd (сумма платежа в долларах)
  • Добавлена экспериментальная поддержка StoreKit 2

Модуль GDPR:

  • Исправлен показ окна PIPA на маленьких экранах

Подробнее о новых функциях и их использовании читайте в документации.


v6.14.3 Release (16-05-2024)🔗

В данной версии:

Модуль Authentication:

  • Исправлено отсутствие callback авторизации в MyGames и Facebook при блокировке устройства.
  • Исправлена ошибка авторизации в Apple Game Center.
  • Исправлена ошибка The bundle 'MRGSAuthenticationFacebook.framework' is missing plist key.

Модуль Analytics:

  • Обновлен AppsFlyer AdRevenue SDK c 6.9.1 до 6.14.3.

Модуль Is-adapter:

  • Исправлена ошибка Use of unimplemented initializer

Подробнее о новых функциях и их использовании читайте в документации.


v6.14.2 Release (07-05-2024)🔗

В данной версии:

Модуль Analytics:

  • Обновлен AppsFlyer SDK c 6.13.1 до 6.14.3.

Модуль Didomi:

  • Обновлен Didomi SDK c 2.2.0 до 2.5.0.

Модуль Firebase:

  • Обновлен Firebase SDK c 10.23.0 до 10.24.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.14.1 Release (27-04-2024)🔗

В данной версии:

  • Минимальная версия iOS поднята до 12.0
  • Добавлена поддержкаApple Privacy Manifest

Модуль MRGService:

  • Добавлена отправка firebaseInstanceId в события MRGS

Модуль Didomi:

  • Обновлен Didomi SDK c 1.98.0 до 2.2.0.
  • Исправлена работа с DMA, если пользователь не попадает под действие TCF

Подробнее о новых функциях и их использовании читайте в документации.


v6.14.0 Release (11-04-2024)🔗

В данной версии:

Модуль MRGService:

  • Исправлена работа метода запроса разрешения на трекинг (ATT) на iOS 17.4 - теперь метод работает корректно, несмотря на баг в iOS.

Модуль Didomi:

  • Добавлен новый метод OnSkippedDueToAtt, который необходимо вызывать, если TCF был пропущен, так как пользователь не согласился с передачей IDFA.

  • Изменено поведение для вызова FirebaseAnalytics#setAnalyticsCollectionEnabled. Теперь данный метод будет вызываться даже если пользователь не попадает под показ TCF, чтобы избежать блокировки для сбора данных Firebase.

Модуль Firebase:

  • Добавлен новый метод FirebaseAnalytics#setAnalyticsCollectionEnabled(bool)

Подробнее о новых функциях и их использовании читайте в документации.


v6.13.3 Release (02-04-2024)🔗

В данной версии:

Модуль Analytics:

  • Улучшена работа deeplink и работа с атрибуцией в AppsFlyer при запуске остановленного приложения

Модуль Advertising:

  • Добавлена поддержка дополнительных трекинговых ссылок (процент просмотра ролика) для AdTech

Модуль Didomi:

  • MRGSDidomi будет также вызывать FirebaseAnalytics#setAnalyticsCollectionEnabled с true, после каждого вызова FirebaseAnalytics#setConsent.

Модуль Firebase:

  • Обновлен Firebase SDK c 10.22.0 до 10.23.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.13.2 Release (27-03-2024)🔗

В данной версии:

Модуль Analytics:

  • Исправлена ошибка при сборке use of '@import' when C++ modules are disabled

Модуль Firebase:

  • Обновлен Firebase SDK c 10.21.0 до 10.22.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.13.1 Release (25-03-2024)🔗

В данной версии:

Модуль Advertising:

  • Исправлена работа окна магазина внутри приложения при воспроизведении рекламы.

Модуль Showcase:

  • Исправлена работа окна магазина внутри приложения.

Подробнее о новых функциях и их использовании читайте в документации.


v6.13.0 Release (21-03-2024)🔗

В данной версии:

  • Добавлена поддержка DMA для AppsFlyer и Firebase.

Модуль MRGService:

  • Добавлен сбор признака запуска iOS приложения на Mac с процессором M серии.
  • Улучшена проверка наличия jailbreak на устройстве.

Модуль Advertising:

  • Исправлен сброс кеша при работе через IronSource adapter.

Модуль Analytics:

  • Обновлен AppsFlyer SDK c 6.12.3 до 6.13.1.

Модуль Bank:

  • Исправлена работа оплаты через СБП в MyGames (WebView)

Модуль Firebase:

  • Обновлен Firebase SDK c 10.13.0 до 10.21.0.

Модуль Didomi:

  • Добавлен новый метод MRGSDidomi#reset().

Модуль IronSource-Adapter:

  • Добавлена отправка данных о GDPR в AdTech.

Подробнее о новых функциях и их использовании читайте в документации.


v6.12.0 Release (27-02-2024)🔗

В данной версии:

Модуль MRGService:

  • Добавлен сбор версий некоторых сторонних SDK.
  • Добавлен новый метод MRGSUsers#SetEmail(string) для передачи email пользователя в MRGS.

Модуль Authentication:

  • Добавлены методы для показа AccessPoint и Common Dashboard для Apple Game Center.

Модуль Analytics:

  • Добавлена поддержка отправки платежей в AppsFlyer с сервера MRGS.
  • Обновлен AppsFlyer SDK c 6.12.1 до 6.12.3.

Модуль Didomi:

  • Добавлено новое свойство MRGSDidomi#ShouldUserStatusBeCollected.

  • Обновлен Didomi SDK c 1.95.1 до 1.98.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.11.1 Release (24-01-2024)🔗

В данной версии:

Модуль Advertising:

  • Улучшен алгоритм вычисления средней цены рекламы для AdTech.
  • Улучшен подход к проверке рекламы для AdTech.

Модуль GDPR:

  • Исправлена локализация для корейского языка.

Модуль IronSource-Adapter:

  • Улучшена загрузка рекламы для AdTech.

  • Исправлен возможный краш.

Подробнее о новых функциях и их использовании читайте в документации.


v6.11.0 Release (17-01-2024)🔗

В данной версии:

Модуль GDPR:

  • Добавлена поддержка корейского закона PIPA.

Подробнее о новых функциях и их использовании читайте в документации.


v6.10.1 Release (21-12-2023)🔗

В данной версии:

Модуль Advertising:

  • Улучшено кеширование кампаний для AdTech.

Подробнее о новых функциях и их использовании читайте в документации.


v6.10.0 Release (04-12-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлен новый метод MRGService#SetHost(String) для смены сетевого адреса в MRGService.

  • Исправлены возможные утечки памяти.

Модуль Advertising:

  • Улучшено кеширование роликов для AdTech - теперь коллизий при загрузке возникать не будет.
  • Добавлена поддержка SKAdNetwork кампаний для AdTech.

Модуль Didomi:

  • Добавлен новый модуль MRGSDidomi для поддержки TCF.

Модуль GameCenter:

  • Модуль MRGSGameCenter помечен как deprecated и будет удален в ближайшем будущем.

Модуль IronSource-Adapter:

  • Добавлен механизм обновления plist приложения при сборке для включения в него skad идентификаторов сетей, необходимых для работы AdTech.
  • Добавлена дополнительная статистика по принятым соглашениям и настройкам при запросах на сервер.

Модуль Notifications:

  • Добавлено свойство authorizationStatus в объект MRGSNotificationSettings - позволяет получить текущий статус разрешения на уведомления.

Модуль Showcase:

  • Изменен шрифт в заголовке витрины с gotham на open-sans.

Подробнее о новых функциях и их использовании читайте в документации.


v6.9.1 Release (20-11-2023)🔗

В данной версии:

Модуль GDPR:

  • Исправлена ошибка когда показывалось окно обновления соглашения вместо смены издателя если у пользователя была ранее принята версия 1591736400.

Подробнее о новых функциях и их использовании читайте в документации.


v6.9.0 Release (08-11-2023)🔗

В данной версии:

Модуль MRGService:

  • Исправлен возможный краш в -[MRGSServerMessage addRequiredFieldsToRequest]

Модуль GDPR:

  • Добавлена поддержка показа GDPR для случаев смены издателя.
  • Улучшено определение необходимости показа соглашения - теперь оно происходит до перезапуска приложения.
  • Добавлена поддержка чтения файлов из StreamingAssets (теперь достаточно передать в методы только его имя).
  • Улучшена локализация - теперь локализация соглашения будет автоматически выбираться на основе текущего языка пользователя

  • Добавлен новый метод MRGSGDPR#setup(appId: Int, secret appSecret: String) для инициализации MRGSGDPR и MRGSCOPPA.

  • Добавлен новый метод MRGSGDPR#showAgreement(at:params:completionHandler:) для показа GDPR окна.
  • Добавлен новый метод MRGSGDPR#shouldShowAgreement() для проверки возможности показать пользователю GDPR окна.
  • Добавлен новый метод MRGSGDPR#onAgreementAccepted() чтобы уведомить MRGS что пользователь принял соглашение в не MRGS GDPR окна. (Для случаев показа свои собственных окон).
  • Добавлен новый временный метод MRGSGDPR#setPublisherUpdateHTMLFilePath() для выставления пути к собственному html файлу для случаев смены издателя.
  • Добавлено новое свойство MRGSGDPR#showDelegate для выставления слушателя событий показа MRGS GDPR окна.
  • Добавлено новое свойство MRGSGDPR#acceptedAgreement для получения информации по последнему принятому соглашению пользователем.
  • Добавлено новое свойство MRGSGDPR#supportedLocalizations для получения списка доступных локализаций из SDK файла mrgsgdpr_langs.json.

  • Добавлен новый класс MRGSGDPRAgreement содержащий информацию по текущей версии GDPR в MRGS консоли.

  • Добавлен новый класс MRGSGDPRAcceptedAgreement содержащий информацию по принятому соглашению пользователем.
  • Добавлен новый класс MRGSGDPRLocalization содержащий разный набор свойств для локализации html страниц в MRGSGDPR SDK.
  • Добавлен новый класс MRGSGDPRShowParams содержащий разный набор свойств для изменения поведения показа MRGS GDPR окна.
  • Добавлен новый enum MRGSGDPRShowReason определяющий причины показа MRGS GDPR окна.
  • Добавлен новый класс MRGSGDPRShowResult содержащий результат показа MRGS GDPR окна.

  • Метод MRGSGDPR#withAdvertising помечен как устаревшим.

  • Метод MRGSGDPR#enableAutomaticCOPPAFlow() помечен как устаревшим.
  • Метод MRGSGDPR#setLocalizationLanguage(tring) помечен как устаревшим.
  • Метод MRGSGDPR#getAgreementTime() помечен как устаревшим. Используйте MRGSGDPR#acceptedAgreement.
  • Метод MRGSGDPR#getAgreedVersion() помечен как устаревшим. Используйте MRGSGDPR#acceptedAgreement.
  • Метод MRGSGDPR#getSupportedLocalizations() помечен как устаревшим.
  • Метод MRGSGDPR#showDefaultAgreement() помечен как устаревшим.
  • Метод MRGSGDPR#showAgreementFromFile() помечен как устаревшим.
  • Метод MRGSGDPR#checkIfUserGetsUnderGDPR() помечен как устаревшим.
  • Метод MRGSGDPR#shouldShowGDPR() помечен как устаревшим.
  • Метод MRGSGDPR#setUserHasAcceptedAgreement() помечен как устаревшим.
  • Интерфейс MRGSGDPRDelegate помечен как устаревшим.

Подробнее о новых функциях и их использовании читайте в документации.


v6.8.0 Release (13-10-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлено новое свойство MRGSGeoIpInfo#city для получения названия города.

Модуль Analytics:

  • Добавлено поле quantity при отправке платежа в AppsFlyer.

Модуль Advertising:

  • Расширена поддержка click-ссылок для AdTech

  • Исправлена ошибка с двойным вызовом трекинг ссылок в AdTech.

Модуль Firebase:

  • Добавлено поле quantity при отправке платежа в Firebase.

Модуль IronSource-Adapter:

  • Добавлена поддержка дополнительных параметров в запросах к серверу.

Модуль IronSource:

  • Добавлена проверка интеграции для модуля MRGSIronSource.

Подробнее о новых функциях и их использовании читайте в документации.


v6.7.2 Release (26-09-2023)🔗

В данной версии:

Модуль GDPR:

  • Добавлена поддержка CCPA для новых библиотек: Tappx и Ogury.

  • Исправлено количество запросов к GeoIp.

Подробнее о новых функциях и их использовании читайте в документации.


v6.7.1 Release (02-09-2023)🔗

В данной версии:

Модуль MRGService:

  • Исправлена ошибка при проверке приложения в AppStore Connect - ITMS-90338: Non-public API usage (restoreState).

Модуль Authentication:

  • Исправлена работа метода login в авторизации MyGames - теперь он будет вызывать окно входа даже при существующей сессии.

Подробнее о новых функциях и их использовании читайте в документации.


v6.7.0 Release (16-08-2023)🔗

В данной версии:

  • Добавлен новый модуль ISMRGSCustomAdapter - адаптер кросс-промо в связке с DSP для IronSource.

Модуль GDPR:

  • Исправлена ошибка с белым фоном в WebView.

Модуль Analytics:

  • Обновлен AppsFlyer SDK с 6.12.0 до 6.12.1.

Модуль Firebase:

  • Обновлен Firebase SDK с 10.12.0 до 10.13.0.

Модуль Authentication:

  • Обновлен VKId SDK с 0.102.0 до 0.103.0.

Подробнее о новых функциях и их использовании читайте в документации.


v6.6.0 Release (12-07-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлено новое MRGServiceParams#userAnonymization свойство для анонимизации пользователя в сетевых запросах на сервер.

Модуль Analytics:

  • Обновлен AppsFlyer SDK с 6.11.1 до 6.12.0.

Модуль Authentication:

  • Обновлен VKId SDK с 0.101.1 до 0.102.0.
  • Обновлен LoginWithAmazon SDK с 3.1.2 до 3.1.3.

Модуль Firebase:

  • Обновлен Firebase SDK с 10.10.0 до 10.12.0.

Модуль GDPR:

  • Расширен список штатов для поддержи CCPA: Коннектикут(CTDPA) и Колорадо(CPA).

Подробнее о новых функциях и их использовании читайте в документации.


v6.5.1 Release (26-06-2023)🔗

В данной версии:

Модуль Advertising:

  • Исправлена работа внутренних алгоритмов по оценке стоимости кросс-промо.

Подробнее о новых функциях и их использовании читайте в документации.


v6.5.0 Release (20-06-2023)🔗

В данной версии:

  • Минимальная поддерживаемая версия iOS поднята до 11.
  • Выключена поддержка bitcode
  • Для сборки теперь необходим XCode 14.1+.

Модуль Analytics:

  • Обновлен AppsFlyer с 6.10.0 до 6.11.1

Модуль Authentication:

  • Обновлен VKId с 0.70.7822777 до 0.101.1
  • Обновлен VK с 1.6.1 до 1.6.4

Модуль Firebase:

  • Обновлен Firebase с 9.6.0 до 10.10.0

Модуль MyTracker:

  • Обновлен MyTracker с 3.0.7 до 3.0.8

Подробнее о новых функциях и их использовании читайте в документации.


v6.4.0 Release (09-06-2023)🔗

В данной версии:

Модуль MRGService:

  • Улучшено определение геопозиции по IP.

Модуль Support:

  • Исправлено отсутствие вызова callback о закрытии окна поддержки при использовании метода showWidgetInView:completionHandler:

Модуль Analytics:

  • Добавлена отправка тестовых платежей в AppsFlyer. Такие платежи будут отправляться с revenue 0.

Модуль Firebase:

  • Добавлена отправка тестовых платежей в Firebase. Такие платежи будут отправляться с revenue 0.

Модуль Recommendations:

  • Добавлен новый метод [[MRGSRecommendations sharedInstance] trackEvent:event] для отправки дополнительных данных с событиями.

Модуль IronSource:

  • Добавлена поддержка автоматической установки сегментов в IronSource в соответствии с правилами, настроенными в консоли MRGS.

Подробнее о новых функциях и их использовании читайте в документации.


v6.3.0 Release (25-04-2023)🔗

В данной версии:

  • Добавлен новый модуль MRGSIronSource для автоматического сбора и отправки impression-level данных о выручке с рекламы, а также данных о загрузке рекламы (результаты аукционов) в MRGS и в AppsFlyer.

Модуль MRGService:

  • Добавлен новый метод [MRGSTracker trackAdRevenueWithMonetizationNetwork] для отправки impression-level данных о выручке с рекламы в MRGS.

Модуль Analytics:

  • Добавлена поддержка отправки impression-level данных о выручке с рекламы в AppsFlyer. Включение/выключение отправки осуществляется в консоли MRGS в разделе проекта.

Модуль Authentication:

  • Добавлено новое [MRGSAuthenticationMyGames#ignoreCachedSession свойство для принудительного игнорирования текущей сессии в MyGames - при повторном входе пользователю не будет доступна опция продолжить как, только чистый вход.

Подробнее о новых функциях и их использовании читайте в документации.


v6.2.0 Release (07-04-2023)🔗

В данной версии:

Модуль Authentication:

  • Добавлены MRGSAuthenticationMyGames#primaryNetwork и MRGSAuthenticationMyGames#excludedNetworks свойства для смены или сокрытия основной кнопки авторизации и для сокрытия маленьких кнопок авторизации в MyGames.

  • Исправлена работа авторизации в VKPlay.

Подробнее о новых функциях и их использовании читайте в документации.


v6.1.1 Release (04-04-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка автоматического отслеживания событий AppDelegate при помощи swizzle - теперь можно не вызывать одноименные методы у класса MRGService. Для включения добавьте ключ MRGSShouldSwizzle со значением true в Info.plist приложения.

  • Исправлена ошибка сохранения буфера отправки.

Подробнее о новых функциях и их использовании читайте в документации.


v6.1.0 Release (27-03-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка нового метода выставления SKAD conversionValue в iOS 15.4 - updatePostbackConversionValue.

  • Теперь для работы модуля ядра необходим Swift.

  • Улучшена логика работы со Swift - теперь standard libs не будут добавляться в приложение при target меньше iOS 12.2.

Модуль Analytics:

  • Добавлена возможность информирования о подписках через S2S вместо клиента (данная опция включается на сервере MRGS).

  • Обновлен AppsFlyer SDK с 6.9.1 до 6.10.0.

  • Исправлено дублирование событий при покупке подписки (для подписки отсылались оба события af_purchase и af_subscribe).

Модуль Authentication:

  • Добавлена поддержка альтернативных bundleId при авторизации в MyGames - теперь можно указать список проверенных bundleId на сайте MRGS, и использовать необходимый в тестовом приложении без создания еще одного приложения в MRGS.
  • Добавлено автоматическое исправление ошибки неверной подписи bundle с ресурсами (при использовании модуля VK авторизации на XCode 14+ и Cocoapods меньше 1.12.0) путем патча Pod файла

Модуль Firebase:

  • Добавлен новый метод [MRGSFirebase appInstanceID] для получения appInstanceId от Firebase SDK.

  • Обновлен Firebase SDK с 8.15.0 до 9.6.0.

Модуль MyTracker:

  • Обновлен MyTracker SDK с 3.0.6 до 3.0.7.

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0 Release (10-02-2023)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка метода для отправки нового формата унифицированных логов - принимает в себя имя события и словарь с любыми ключами и значениями
  • Добавлен метод для выставления значений по умолчанию, которыми будут обогащаться все логи, отправленные через новый метод в MRGSTracker
  • Добавлена поддержка события принятия соглашения в MRGSTracker (например, при принятии пользователем соглашения на подписку в Калифорнии)
  • Добавлена поддержка нового класса MRGSTrackerProfile для отправки профилей нового формата в унифицированные логи

Модуль Bank:

  • Добавлена отправка appsflyerId для платежей на Market|MyGames

Модуль Support:

  • Добавлена поддержка уведомлений для виджета поддержки - теперь при нажатии на уведомление, пользователь сможет попасть сразу в виджет поддержки

Модуль Analytics:

  • Добавлена поддержка UDL (Universal Deep Linking) в AppsFlyer

Модуль Showcase:

  • Исправлены потенциальные ошибки при отображении окна магазина внутри приложения

Модуль Authentication:

  • Изменен код ошибки при отмене входа в Sign In With Apple - теперь он равен стандартному коду ошибки отмены MRGS (-101)

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-b02 Release (23-01-2023)🔗

В данной версии:

Модуль MRGService:

  • Исправлена работа share-диалога на iPad

Модуль Analytics:

  • Исправлена ошибка с невозможностью получить параметры инициализации для AppsFlyer при старте через plist - что приводило к невозможности запустить AppsFlyer

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-b Release (12-01-2023)🔗

В данной версии:

Основное:

  • Добавлена поддержка нативного окна "поделиться". Подробнее здесь
  • Полностью переработан API MyGamesSupport
  • Модуль авторизации был разбит на подмодули - Facebook,Amazon
  • Изменено поведение по умолчанию для флага automaticPaymentTracking и отправки userId в AppsFlyer.
  • Параметры для модулей были вынесены в соответствующие модули
  • Исправлены ошибки

Модуль MRGService:

  • Добавлена поддержка нативного окна "поделиться". Подробнее здесь
  • Добавлена проверка корректности bundleId в IntegrationCheck
  • Изменен поведение флага automaticPaymentTracking - теперь по умолчанию он true
  • Удален deprecated функционал.
  • Исправлены ошибки .pcm: No such file or directory при сборке приложения

Модуль Support:

  • Добавлен новый класс MRGSMyGamesSupport с новым полностью переработанным интерфейсом для работы с службой поддержки(добавились классы страниц, конфига, новые методы для открытия окна), старые классы помечены как Deprecated

Модуль Analytics:

  • Во все события теперь будут добавляться дополнительные значения mrgs userId и deviceId.
  • Изменено дефолтное поведение по отправке userId и deviceId - по умолчанию в CUID AppsFlyer теперь отправляется userId, а с помощью флага useDeviceIdAsUserId можно включить старое поведение для отправки deviceId. Подробнее здесь
  • Конфиг MRGSAppsFlyerParams был перемещен в MRGSAnalytics модуль.
  • Обновлен Appsflyer SDK с 6.8.0 до 6.9.1.

Модуль Firebase:

  • Добавлен метод setUserProperties

Модуль Authentication:

  • Авторизация MRGSAuthenticationFacebook была перенесена в свой собственный модуль MRGSAuthenticationFacebookModule.
  • Авторизация MRGSAuthenticationAmazon была перенесена в свой собственный модуль MRGSAuthenticationAmazonModule.
  • Конфиг MRGSAppleGameCenterParams был перемещен в MRGSAuthentication модуль.
  • Конфиг MRGSMyGamesParams был перемещен в MRGSAuthentication модуль.

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-a03 Release (16-12-2022)🔗

В данной версии:

Модуль GDPR:

  • Добавлена поддержка закона VCDPA Вирджинии в функционал CCPA

Модуль Analytics:

  • При проксировании метрик MRGS в AppsFlyer добавлено поле af_level

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-a02 Release (10-11-2022)🔗

В данной версии:

Модуль Showcase:

  • Изменен текст попапа об установке всех игр из списка.

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-a01 Release (08-11-2022)🔗

В данной версии:

Модуль MRGService:

  • В событии запуска теперь будет уходить признак первого запуска на устройстве для отслеживания метрик реатрибуции
  • Настройки прокси для MyTracker теперь получаются только при подключении данного модуля

Модуль MyTracker:

  • Исправлена проблема при архивировании проектов при подключенном модуле MyTracker

Подробнее о новых функциях и их использовании читайте в документации.


v6.0.0-a Release (03-11-2022)🔗

Данная версия включает себя обратно несовместимые изменения. Для миграции на новую версию обратитесь к документации по Миграции.

В данной версии:

  • MyTracker теперь не является обязательной зависимостью. Работа с ним вынесена в отдельный модуль MRGSMyTracker. Класс MRGSMyTrackerParams перемещен в модуль MRGSMyTracker.
  • Работа с VK авторизацией вынесена в отдельный модуль MRGSAuthenticaitonVK. Класс MRGSVKontakteParams перемещен в модуль MRGSAuthenticationVK.
  • Изменены имена всех пакетов с ru.mail.mrgs.. на games.my.mrgs..
  • Из модулей удалены упоминания VK/MyTracker и перенесены в соответствующие новые модули

Модуль MRGService:

  • Класс MRGSVKIdParams перемещен в модуль MRGSAuthenticationVKId.
  • Свойство MRGSMyGamesParams#vkPlayMode удалено. Используйте MRGSMyGamesParams#customHost.

Модуль Support:

  • Enum entity kMRGSMyGamesSupportCredentialSocialNetworkVkontakte переименовано.

Модуль Authentication:

  • Enum MRGSAuthenticationNetwork удален, вместо него добавлены string enum(строковые константы) MRGSAuthenticationNetwork, содержащий тот же набор соцсетей.

Важно

  • После обновления из сборки пропадет MyTracker SDK, VK SDK, так как они теперь являются отдельными модулями. Соответственно, атрибуция и аналитика проекта в MyTracker остановится.
  • В случае, если вам необходимо оставить данные SDK в проекте, достаточно просто подключить новые модули к проекту и перейти на новый метод инициализации.
  • Из-за смены имен пакетов некоторые локальные уведомления могут быть потеряны (доставленные с момента обновления приложения и до его первого открытия после обновления).
  • Для того чтобы продолжать пользоваться 1link и MyUA, необходимо, чтобы 1link переключил сбор данных проекта на AppsFlyer + MRGS SDK.

Подробнее о новых функциях и их использовании читайте в документации.


v5.3.2 Release (02-11-2022)🔗

В данной версии:

Модуль Analytics:

  • Изменен хост для AppsFlyer на appsflyersdk.com для обхода блокировок в России

Модуль Showcase:

  • Добавлена поддержка удаленного выставления заголовка для витрины Showcase

Подробнее о новых функциях и их использовании читайте в документации.


v5.3.1 Release (17-10-2022)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка обогащения событий MRGS параметром appsflyerId даже если не подключен модуль MRGSAnalytics, то есть AppsFlyer SDK интегрирован отдельно.

Подробнее о новых функциях и их использовании читайте в документации.


v5.3.0 Release (14-10-2022)🔗

В данной версии:

Модуль Analytics:

Подробнее о новых функциях и их использовании читайте в документации.


v5.2.0 Release (03-10-2022)🔗

В данной версии:

Модуль Authentication:

  • Добавлено новое свойство MRGSMyGamesParams#useDevEnvironment для включения/выключения DEV окружения для авторизации MyGames/VKPlay. Подробнее смотрите в разделе DEV окружение.

  • Добавлена поддержка нового способа авторизации через VKID (superappkit SDK). Подробнее смотрите в разделе VKID.

Модуль Bank:

Подробнее о новых функциях и их использовании читайте в документации.


v5.1.0 Release (02-09-2022)🔗

В данной версии:

Модуль Authentication:

  • Добавлено новое свойство MRGSAuthenticationMyGames#shouldHideBrandOccurrences для того что бы скрыть все упоминания бренда MY.GAMES при авторизации через MRGSAuthenticationMyGames. Смотри Сокрытие упоминания бренда MY.GAMES.
  • Добавлено новое свойство MRGSMyGamesParams#vkPlayMode для смены способа авторизации с MyGames на VKPlay. Смотри Авторизация через VKPlay.

Модуль Bank:

  • Добавлена поддержка покупки нескольких товаров в одной транзакции.

Подробнее о новых функциях и их использовании читайте в документации.


v5.0.1 Release (27-07-2022)🔗

В данной версии:

Модуль Bank:

  • Добавлена поддержка удаленного изменения заголовка витрины Market|MyGames.

Модуль Analytics:

  • Обновлен AppsFlyer SDK до версии 6.8.0

Модуль Firebase:

  • Обновлен Firebase SDK до версии 8.15.0

Подробнее о новых функциях и их использовании читайте в документации.


v5.0.0 Release (29-06-2022)🔗

Данная версия включает себя обратно несовместимые изменения. Для миграции на новую версию обратитесь к документации по Миграции.

В данной версии:

  • Добавлена поддержка менеджеров пакетов Swift Package Manager/Cocoapods/Carthage (подробнее здесь)
  • Удалены Deprecated методы.
  • Исправлены nullability и readonly нотации
  • Исправлены уровни доступа к полям и классам
  • Изменен доступ к singleton в Swift - метод sharedInstance() перенесен в поле shared.
  • Для Swift некоторые методы и enum поменяли свое название для соответствия naming conventions

Модуль MRGService:

  • Проверка интеграции теперь возвращает объект нового класса MRGSIntegrationCheckResult
  • Добавлено больше вариаций методов старта SDK, чтобы не заполнять ненужные параметры

  • Класс MRGServiceInit переименован в MRGService

  • Метод MRGServiceWithAppId:andSecret:andDelegate изменен на startWithAppId:secret:delegate
  • Все поля в настройках внешних SDK сделаны readonly, используйте конструкторы
  • Удален метод MRGSLogS:
  • Все методы для отправки метрик в MRGSMetrics переименованы в аналоги без приставки and перед параметром
  • Тип полей класса MRGSTrackerEvent изменен с int на NSInteger
  • Переименован метод MRGSDevice.erraseUDIDInfoFromDevice -> MRGSDevice.eraseUDIDInfoFromDevice

Модуль Analytics:

  • Удалена поддержка Flurry, Chartboost, GoogleConversion (классы MRGSFlurry, MRGSFlurryParams, MRGSChartboostParams, MRGSGoogleConversionTrackingParams, поля flurry, flurryParams, chartboostParams, googleConversionParams)

Модуль Authentication

  • Изменены домены ошибок с com.my.MRGSAuthentication.<network> на games.my.mrgs.authentication.<network>

Модуль Bank:

  • MRGSBankProduct.skProduct отмечен как nullable
  • MRGSBankPurchaseResult.productIdentifier отмечен как nonnull
  • MRGSBankPurchaseRequest.productIdentifier отмечен как readonly, удалены конструкторы без параметров
  • Поля класса MRGSBankSubscriptionGroup отмечены как readonly, используйте конструктор
  • Поля класса MRGSBankReceiptItem отмечены как readonly
  • Переименован класс MRGSBankProductsResponce -> MRGSBankProductsResponse
  • Изменен и переименован делегат MRGSBankDelegateEx -> MRGSBankDelegate:

    [MRGSBank sharedInstance].delegateExtended -> [MRGSBank sharedInstance].delegate
    didReceiveProductsResponce -> didReceiveProductsResponse
    didReceiveSucessfullPurchase: -> didReceiveSuccessfulPurchase
    

Модуль Notifications:

  • Добавлен новый метод делегата shouldPresentNotification, который позволит показать уведомление при запущенном приложении

  • Переименован MRGSNotificationCategory.categoryWithIdentifier:andActions: -> MRGSNotificationCategory.categoryWithIdentifier:actions:

  • Переименованы методы делегата: didClickedOnNotification -> didClickOnNotification, didClickedOnLocalNotification -> didClickLocalOnNotification, didClickedOnRemoteNotification -> didClickOnRemoteNotification
  • Переименован метод findPendingNotificationWithIdentifier:andCompletionHandler: -> findPendingNotificationWithIdentifier:completionHandler:
  • Переименован метод findDeliveredNotificationWithIdentifier:andCompletionHandler: -> findDeliveredNotificationWithIdentifier:completionHandler:
  • В MRGServiceParams убран флаг MRGSNotificationCenterSupported
  • В MRGServiceParams переименован флаг defferedMRGSNotificationCenterStart -> deferredMRGSNotificationCenterStart

  • Исправлен краш с циклическим вызовом при использовании нативного делегата сторонними SDK

Модуль Support:

  • Вместо define ошибок MyComSupport добавлен error enum MRGSMyGamesSupportErrorCode

Подробнее о новых функциях и их использовании читайте в документации.


v4.11.3 Release (06-06-2022)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка удаленного выставления proxy-сервера для запросов MyTracker

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.11.2 Release (04-05-2022)🔗

В данной версии:

Модуль Advertising:

  • Улучшен парсинг кампаний

Модуль Showcase:

  • Добавлена возможность скрыть заголовок витрины удаленно
  • Улучшен парсинг кампаний

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.11.1 Release (08-04-2022)🔗

В данной версии:

Модуль Bank:

  • Добавлена передача номера версии и сборки в платежах VKPay на сервер MRGS.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.11.0 Release (24-03-2022)🔗

В данной версии:

Модуль MRGService:

  • Добавлен новый метод MRGSDevice#getGeoIpInfo:^(MRGSGeoIpInfo* _Nullable info, NSError* _Nullable error) для определения географическое положение устройства с доступом в Интернет по его IP-адресу. Подробней смотрите Географическое положение по IP.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.10.1 Release (22-03-2022)🔗

В данной версии:

Модуль Bank:

  • Улучшена обработка ошибок в MyGamesBank

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.10.0 Release (18-03-2022)🔗

В данной версии:

Модуль Bank:

  • Добавлена поддержка VKPay (Market|MyGames) платежей - альтернативный способ оплаты покупок при размещении вне магазинов приложений. Подробнее смотрите на странице описания системы

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.9.1 Release (28-02-2022)🔗

В данной версии:

Модуль Support:

  • Добавлена поддержка просмотра файлов(а также возможностью поделиться ими), скачанных из поддержки. В случае, если файл не поддерживает просмотр, будет показан ShareView как раньше.
  • Исправлена ошибка с показом загруженного файла уже после закрытия виджета поддержки.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.9.0 Release (07-02-2022)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка выставления интервала [0;X1): converisonValue=1 в SKAD при установке прибыли по шагам на сайте. Подробнее читайте здесь.

  • Обновлен MyTracker SDK с 3.0.5 до 3.0.6. Подробней об изменениях.

  • Добавлено частичное сокрытие всех секретов и ключей в логах IntegrationCheck.

Модуль Analytics:

  • Обновлен AppsFlyer SDK с 6.4.2 до 6.5.2. Подробней об изменениях.
  • Добавлена дополнительная отправка данных по платежу таких как: af_content_id (sku товара) и af_order_id (orderId из чека).

Модуль Authentication:

  • Добавлен новый метод MRGSAuthentication#getAccessToken:^(MRGSAuthenticationAccessToken *token, NSError *error) для получения AccessToken асинхронно, это позволит всегда получать актуальный и валидный токен.
  • Все возможные коды ошибок в модуле были добавлены в public часть.

  • Метод MRGSAuthentication#getAuthInfo был помечен как deprecated.

  • Улучшения и оптимизации в работе.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.8.0 Release (24-01-2022)🔗

В данной версии:

Модуль MRGService:

  • Добавлен новый метод MRGSTracker#trackUserProfile(MRGSTrackerUserProfile) для отправки профиля пользователя в систему кастомных логов (событий). Подробней смотрите в документации.

Модуль Advertising:

  • Исправлен приватный метод открытия ссылки в PlayableAds в формате mraid.

Модуль GDPR:

  • Добавлен новый метод MRGSGDPR#resetModule для сброса факта принятия соглашения и всех данных в GDPR, COPPA. Также сбрасывает настройки по CCPA и выставляет их в статус разрешено отслеживание третьими лицами в случае, если ранее отслеживание было выключено. То есть полный сброс модуля GDPR к состоянию заново установленного приложения. Данный метод нужно вызывать ТОЛЬКО в случае, когда пользователь потребовал удалить свой аккаунт по закону GDPR, его удалили, и нужно сбросить факт его принятия соглашения на клиенте, чтобы снова было показано окно GDPR/COPPA для нового аккаунта пользователя.

Модуль Support:

  • Добавлена возможность создания запроса на удаление всех своих данных пользователем (GDPR). Подробней смотрите в документации.

Модуль Showcase:

  • Изменен дизайн витрины.
  • Изменено поведение для расчета уведомления. Теперь если заново придет реклама, которую юзер уже видел, то уведомления больше не будет передаваться в делегат.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.7.1 Release (13-12-2021)🔗

В данной версии:

Модуль MRGService:

  • Исправлено обрезание логов в некоторых случаях

Модуль Support:

  • Исправлен краш в MyGames Support при проверке тикетов

Модуль Showcase:

  • Исправлено отображение AppClips для первого баннера в витрине (в редких случаях раньше AppClip мог не показаться)

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.7.0 Release (07-12-2021)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка установки стороннего userId в MyTracker через [MRGSMyTracker forceCustomUserId:@""]. Подробней смотрите в документации.
  • Обновлен MyTracker SDK с версии 3.0.2 до версии 3.0.5.
  • Исправлен вывод данных в лог.

Модуль Analytics:

  • Добавлена поддержка выставления customerUserId в AppsFlyer через метод [MRGSAppsFlyer forceCustomUserId:@""] до старта MRGS, а также выключение автоматического выставления этого параметра. Подробней смотрите в документации.
  • Обновлен AppsFlyer SDK с версии 6.3.5 до версии 6.4.2.

Модуль Support:

  • Убрана поддержка старого виджета саппорта.
  • Удален метод MRGSMyComSupport.secret, который использовался для старого виджета.
  • Улучшена проверка тикетов в виджете поддержки - теперь проверка будет работать быстрее и меньше нагружать сервер поддержки.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.6.1 Release (03-11-2021)🔗

В данной версии:

Модуль GDPR:

  • Исправлена работа с памятью в COPPA

Модуль Showcase:

  • Исправлена работа AppClips, улучшена анимация прокрутки

Модуль Support:

  • Добавлена поддержка авторизации VK при открытии виджета поддержки.

Переход на новый виджет сапорта

В следующем релизе мы уберем поддержку старого виджета сапорта. На клиенте теперь не нужно будет выставлять секрет и идентификатор проекта - секрет хранится на сервере, а projectId будет равен mrgsAppId. Для того, чтобы подготовиться, проверьте работу нового виджета в своем проекте(обычно проблемы возникают с тестовым приложением, т.к. projectId равен mrgsAppId. Это значит, что тестового проекта в сапорте может не быть, в таком случае нужно запросить его создание)

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.6.0 Release (01-10-2021)🔗

В данной версии:

Модуль MRGService:

  • Добавлена поддержка событий отправки сообщений в чате и переписках в игре с помощью MRGSTracker (передача логов чатов по закону Яровой)

Модуль Support:

  • Добавлена поддержка авторизации в виджете поддержки - теперь виджет стал безопаснее, и позволит связывать запросы пользователей с аккаунтами в соцсетях. При использовании модуля MRGSAuthentication авторизация подтянется автоматически.

Модуль GDPR:

  • Добавлена поддержка частных ссылок на Privacy policy в GDPR при показе дефолтного/кастомного HTML с локализацией. Достаточно прописать ссылку на policy в админке MRGS.

Модуль Authentication:

  • Исправлено обновление токена в MyGames авторизации внутри одной игровой сессии (раньше токен обновлялся только на старте приложения)
  • Исправлен возможный показ окна "перейдите по ссылке" в авторизации MyGames, если использовался WebView.

Модуль Showcase:

  • Исправлен фон витрины при сборке с iOS 15 SDK
  • Исправлена ошибка при проверке хеш-суммы, если от сервера пришел не валидный md5 хеш.

Модуль Advertising:

  • Исправлена ошибка при проверке хеш-суммы, если от сервера пришел не валидный md5 хеш.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.5.1 Release (21-09-2021)🔗

В данной версии:

Модуль MRGService:

  • Добавлено ограничение на размер отсылаемых унифицированных логов в размере 128кб.

Модуль Authentication:

  • Исправлена работа авторизации MyGames - теперь если userId равен пустой строке, авторизация вернет ошибку

Модуль GDPR:

  • Изменен текст в окне с показом ограничения на игру в COPPA

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.5.0 Release (03-09-2021)🔗

В данной версии:

Главные изменения:

  • Добавлена поддержка закона COPPA. Подробнее смотрите в документации.
  • Поднята минимально поддерживаемая версия iOS до 9.0.

Модуль MRGService (базовый):

  • Исправлены warning'и для non-arc проектов.

Модуль Bank:

  • Исправлен краш в iOS 15 beta из-за пустой локали в возвращаемых продуктах от Apple.

Модуль Showcase:

  • Улучшена анимация прокручивания в витрине.
  • Исправлена анимация поворота витрины.

Модуль Authentication:

  • Добавлена поддержка авторизации Facebook Login For Gaming.
  • Обновлен FB graph api до версии v11.0.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.4.0 Release (24-08-2021)🔗

В данной версии:

Модуль MRGService (базовый):

  • Добавлена поддержка новой системы для сбора внутриигровых логов(событий). Подробнее смотрите в документации.
  • Обновлен MyTracker с версии 2.2.1 до 3.0.2

Модуль Analytics:

  • Улучшен трекинг платежей. Теперь информация по новым платежам отправляется лишь единожды, что позволяет избежать дубликатов в статистике.
  • Добавлена поддержка отправки событий покупки подписки(af_subscribe) или trial-подписки(af_start_trial) в AppsFlyer
  • Обновлен AppsFlyer с версии 6.2.5 до версии 6.3.5

Модуль Firebase:

  • Улучшен трекинг платежей. Теперь информация по новым платежам отправляется лишь единожды, что позволяет избежать дубликатов в статистике.
  • Обновлен Firebase с версии 7.4.0 до версии 8.6.0

Модуль Recommendations:

  • Добавлена поддержка отправки новых типов событий для рекомендательной системы (RecSys). Подробнее смотрите в документации.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.8 Release (06-08-2021)🔗

В данной версии:

Модуль MRGService (базовый):

  • Улучшена проверка интеграции - теперь будет валидироваться MyGames ClientId при его наличии.

Модуль Analytics:

Модуль Notifications:

  • Исправлена ошибка с developerPayload в уведомлениях, полученных с сервера, теперь он находится не в поле params, а в корне словаря (в поле params также оставлены данные для совместимости).

Модуль Advertising:

  • Добавлена поддержка открытия AppStore внутри приложения и поддержка AppClips (системный попап, через который можно загрузить/открыть приложение не выходя из игры). Подробнее смотрите на странице модуля рекламы

Модуль Showcase:

  • Добавлена поддержка открытия AppStore внутри приложения и поддержка AppClips (системный попап, через который можно загрузить/открыть приложение не выходя из игры). Подробнее смотрите на странице модуля витрины

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.7 Release (28-06-2021)🔗

В данной версии:

Модуль GDPR:

  • Исправлена ошибка в тексте локализации для японского языка.
  • Исправлена ошибка с переносом текста для корейского языка в WebView.
  • Добавлена анимация "нажатия" на кнопку принятия GDPR в WebView.
  • Изменено поведение показа GDPR в WebView. Теперь по умолчанию показывается GDPR без Разрешение на рекламу.
  • Исправлена ошибка позволяющая серверу понижать версию GDPR на клиенте. Теперь версию можно только повышать.
  • Улучшен механизм получения версии GDPR с сервера - через конфиг

Модуль Showcase:

  • Исправлена ошибка с невозможностью повернуть экран в некоторых случаях.

Модуль Authentication:

  • Улучшена обработка ошибок при логине в MyGames
  • Добавлена поддержка локализации окна MyGames в соответствии с языком устройства (настраивается на сервере, по умолчанию данная функция включена)

Модуль Firebase:

  • Изменена логика отправки платежей - "восстановленные" платежи больше не попадают в Firebase.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.6 Release (03-06-2021)🔗

В данной версии:

Модуль MRGService (базовый):

  • Внутренние подготовки к переходу на iOS 9 в качестве минимально поддерживаемой. Убрано использование deprecated api для iOS 8.

Модуль Bank:

  • Теперь в случае ошибок платежа на наш сервер будет отправляться developerPayload

Модуль Notifications:

  • Исправлена ошибка в отправке статистики об открытии приложения с push-уведомления на сервер в случае, если проект не выставляет делегат.

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.5🔗

В данной версии:

Модуль MRGService (базовый):

  • Добавлена поддержка получения точного серверного времени (сбрасывается только при перезагрузке устройства или смене системного времени). Подробнее смотрите здесь.
  • Добавлен принудительный краш в случае, если файл MRGService.plist не найден, но необходим для инициализации.
  • Улучшена проверка интеграции - проверки на неверные версии/параметры модулей и корректности использования модуля уведомлений.
  • Улучшено логирование - теперь все строки нашего лога будут начинаться с "[MRGS]".

Модуль Firebase:

  • Добавлены новые события о суммарном времяпровождении пользователя в приложении: 30 минут (mrgs_cumulative_session_time_30min), 1 час (mrgs_cumulative_session_time_60min), 2 часа (mrgs_cumulative_session_time_120min) и 3 часа (mrgs_cumulative_session_time_180min). События придут лишь раз, при достижении пользователем соответствующего времени. Подробней см. Отправка событий

Модуль Notifications:

  • Добавлена поддержка Trial notifications - отправка уведомлений без предварительного согласия пользователя. Подробнее смотрите в документации по уведомлениям
  • Изменена работа метода isNotificationsEnabledWithCompletion - теперь он вернет true, когда включены хотя бы баннеры/показ в центре уведомлений/цифры на иконке/включен trial режим.

Модуль Authentication:

  • Исправлен повторный логин в Apple Game Center после ошибки - в таких случаях при вызове метода логина мы сразу вернем Вам в результат ошибку с кодом '-102'. Лучше всего при получении такой ошибки показать пользователю окно с призывом открыть раздел "Game Center" в системных настройках и выполнить вход в учетную запись там, и после этого вернуться в приложение.
  • Добавлена поддержка смены userID в Sign In With Apple при трансфере приложения с одного паблишера на другого

Удаление deprecated методов и свойств

Мы планируем удалить методы и свойства, которые были отмечены как deprecated/obsolete. Для того, чтобы вы успели подготовиться, мы сообщаем об этом заранее. Ниже приведены примерные временные рамки, в которые мы планируем удаление (в случае, если вам нужно больше времени, или есть другие пожелания, свяжитесь с нами):

  • Старый API MRGSBank (loadProductsWithTypesFromAppleServer, addPayment, MRGSBankDelegate, hasPendingPayment и др.) - конец 2021 года.
  • Старый API MRGSNotifications (класс MRGSNotificationManager, MRGService.registerForRemoteNotifications) - конец 2021 года.
  • application:openURL:sourceApplication:annotation: - конец 2021 года.
  • GDPR - методы, включающие в себя agreementVersion (showAgreementAtViewController:forAppId:fromFile:withVersion: и др) - до осени.
  • MRGSMyGamesParams.clientSecret, MRGSAuthenticationAccessToken.userID, MRGSNotificationCenter.manuallyStartCenter и другие отмеченные как deprecated - до осени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.4🔗

В данной версии:

Важное изменение:

  • Добавлена поддержка выставления conversionValue в SKAdNetwork через MRGS с большим количеством правил расчёта этого значения, которые вы можете задать. На клиенте дополнительных вызовов делать не требуется, данная функция включается удаленно.

Модуль Analytics:

  • Исправлена работа флага dontForwardReportedPayments - теперь при включении данного флага платежи, проведенные через MRGS тоже не будут отправляться в AppsFlyer.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.3🔗

В данной версии:

Модуль Analytics:

  • Исправлен баг AppsFlyer при работе с флагом waitForATTUserAuthorization - теперь он корректно работает
  • Исправлен баг AppsFlyer - теперь работа с SkAdNetwork через AppsFlyer будет корректной (раньше постбеки могли приходить с conversionValue == 0)
  • Обновлен AppsFlyer SDK с 6.2.4 до 6.2.5.

Модуль Showcase:

  • Исправлена работа при нажатии на баннер во время прокрутки витрины.
  • Улучшен трекинг рекламы.

Важное обновление

Если вы используете настройку SKAdNetwork через AppsFlyer, то необходимо обновиться до данной версии.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.2🔗

В данной версии:

Модуль Analytics:

  • Добавлен новый флаг waitForATTUserAuthorization для AppsFlyer. Позволяет выставить время в секундах, которое Appsflyer SDK должен подождать перед тем, как отправить событие установки/запуска. Необходимо для того, чтобы успеть получить IDFA пользователя на iOS 14+ при первой установке для последующей атрибуции. Подробнее смотрите в документации

Модуль MyGamesSupport:

  • Исправлена поддержка нового виджета на iOS 10.

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.1🔗

В данной версии:

Модуль MRGService (базовый):

  • Добавлен новый метод [MRGSMyTracker getInstanceIdWithCompletionHandler: ^(NSString* instanceID) { }] для получения уникального идентификатора для S2S отправки событий.

Модуль MyGamesSupport:

  • Добавлено логирование ошибок виджета в MRGSMetrics (метрика -18)

Подробнее о новых функциях и их использовании читайте в документации.


v4.3.0🔗

В данной версии:

Самые важные изменения:

  • Добавлен новый модуль MRGSShowcase - новый формат кросс-промо рекламы - витрина приложений.
  • Добавлена поддержка обновленного виджета поддержки - с полностью новым интерфейсом, возможностями и настройками для кастомизации. Добавлены новые методы.
  • iOS пакеты теперь дополнительно распространяются в формате xcframework - новый формат библиотек от Apple, ускоряющих сборку и поддерживающих симуляторы на процессорах M1.

А также:

Модуль MRGService (базовый):

  • Добавлен новый флаг showTrackingAuthorizationDialogOnAlliOSVersions для настройки показа запроса на отслеживание пользователя ATT. Необходим для включения/отключения показа на всех версиях iOS, или только на 14.5+.
  • Добавлен новый метод [[MRGSDevice currentDevice] hasUserAgreedToBeTracked] - для проверки, согласился ли пользователь на отслеживание с учетом iOS 14-14.5, то есть доступен ли IDFA.
  • Добавлен новый метод [MRGSMyTracker setLaunchTimeout:NSTimeInterval]. Подробней смотрите в документации
  • Исправлена отправка дублей метрик принятия соглашения на отслеживание ATT.

Модуль Advertising:

  • Улучшен трекинг рекламы для A/B тестов.
  • Удалена поддержка Карусели баннеров (роллер).

Модуль Analytics:

  • Добавлена возможность отключить трекинг платежей добавленных из MRGSMetrics в AppsFlyer - флаг dontForwardReportedPayments. Подробней смотрите в документации.
  • Добавлена возможность дублировать отправку событий из MRGSMetrics(отправленные через [MRGSMetrics addMetric]), в AppsFlyer - флаг forwardMetrics. Подробней смотрите в документации.
  • Обновлен AppsFlyer SDK с 6.1.4 до 6.2.4.

iOS платежи через MRGSMetrics

Теперь по умолчанию платежи, отправленные в MRGS через MRGSMetrics будут отправляться в AppsFlyer. Для отключения такого поведения воспользуйтесь флагом dontForwardReportedPayments.

Модуль Support:

  • Добавлена поддержка нового виджета поддержки с новым интерфейсом и большим спектром возможностей, улучшенным взаимодействием с клиентом. Внешнее API виджета не поменялось, только добавлены новые методы и настройки. Подробнее смотрите в документации.
  • Добавлен новый метод для проверки непрочитанных сообщений с получением их количества (а не просто наличия) - [[MRGSMyComSupport sharedInstance] checkTicketsWithCompletionHandler: ^(NSNumber* numberOfUnreadTickets, NSError* error) { ... } ];. Он работает без делегата, данные или ошибка сразу придут в блок.
  • Добавлена возможность выставлять тему оформления виджета с помощью поля widgetTheme. Доступные темы - светлая/темная/темно-оранжевая/как на устройстве.
  • Добавлена возможность выставлять язык локализации нового виджета с помощью поля localizationLanguge.
  • Добавлена возможность загрузки файлов из виджета поддержки в новом виджете.
  • Добавлена возможность безопасного открытия нового виджета поддержки с кодом.

Модуль Showcase:

  • Добавлен новый модуль Showcase - новый формат кросс-промо витрины. Подробней смотрите в документации.

Модуль Notifications:

  • Исправлен краш, когда создавалось уведомление с временем отправки == текущему времени.

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.7🔗

В данной версии:

Модуль Advertising:

  • Добавлены дополнительные логи для выявления потенциальных проблем.

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.6🔗

В данной версии:

Модуль Authentication:

  • Исправлен Info.plist внутри VKSdkResources.bundle, из-за которого могли быть ошибки при экспорте ipa из архива xcarchive.

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.5🔗

В данной версии:

Модуль MRGService (базовый):

  • Исправлен конфликт с SDK Ironsource (duplicate symbol '_SignalHandler')
  • Исправлен краш, когда передавался nil в application: openURL:sourceApplication:sourceApplication:annotation:
  • Добавлен трекинг событий(показ/принятие/отказ), связанных с новым запросом IDFA на iOS 14+.
  • Обновлен MyTracker SDK с 2.1.2 до 2.2.1.

Модуль Authentication:

  • Обновлен VK SDK с 1.4.6 до 1.6.1.
  • Обновлен Amazon SDK до 3.1.1.

Модуль Analytics:

  • Добавлено свойство CustomerUserID для AppsFlyer для установки собственного customerUserID вместо дефолтного, устанавливаемого MRGS (мы ставим этот параметр по дефолту равным IDFA или Device ID).
  • Обновлен AppsFlyer SDK с 6.0.7 до 6.1.4.

Модуль Billing:

  • Исправлена ошибка с потерей developerPayload при использовании нового делегата. Добавлены логи.

Модуль Firebase:

  • Новая структура событий. Теперь будут приходить дополнительные параметры такие как: "currency_local" и "price_local" - местная сумма и валюта, в которой совершался платеж. "is_first_payment" - является ли этот платеж первым. "value" и "currency" - теперь всегда будут в USD.
  • Обновлен FirebaseAnalytics SDK с 6.9.0 до 7.4.0. Важно - теперь модуль Firebase будет работать только с XCode 12+.

Модуль GDPR:

  • Важное исправление GDPR для проектов, которые ставят флаг onlyEU = true. Больше не проставляем автоматическое принятие GDPR, если пользователь не попадает под него, теперь будем показывать соглашение только после того, как пользователь попадет в EU.

Модуль Notifications:

  • Добавлено свойство ApplicationIconBadgeNumber для работы с номером на иконке приложения (только для iOS).

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.4🔗

В данной версии:

Модуль Authentication:

  • VK

    • Добавлена проверка наличия схемы в Info.plist приложения, т.к. VKSdk этого не проверяет.
  • AppleGameCenter

    • Исправлена ошибка двойного прихода колбека логина при разворачивании приложения в первую сессию после авторизации.

Модуль Billing:

  • Исправлен редкий краш при совершении платежа и сворачивании приложения.

Модуль Notifications:

  • Улучшена работа с reflection для методов работы с локацией, теперь Apple не присылает warning на ревью про использование локации

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.3🔗

В данной версии:

Модуль MRGService (базовый):

  • Улучшена схема обмена сообщениями с сервером MRGS, теперь отправка и получение будут требовать меньше времени.

Модуль Authentication:

  • MyGames
    • Исправлено отображение имени приложения в окне авторизации (раньше показывался ClientID, теперь показывается видимое пользователю имя приложения).

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.2🔗

В данной версии:

Модуль Advertising:

  • Улучшена работа с памятью. Память теперь лучше освобождается и выделяется только в необходимых местах.
  • Исправлен редкий баг с таймером при просмотре видео.

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.1🔗

В данной версии:

Модуль MRGService (базовый):

  • Обновлен AppsFlyer до версии 6.0.7

Модуль Bank:

  • Добавлено поле productIdentifier в объект MRGSBankPurchaseResult нового делегата банка. Данное поле содержит идентификатор покупаемого/купленного продукта, и всегда будет непустым, в отличие от поля product, которое может быть nil, если продукт, например, не был загружен.

Модуль Authentication:

  • Переработана работа авторизации MyGames. Теперь не используется ClientSecret и RedirectURL, что делает авторизацию более безопасной, а также позволяет получить большее количество информации о пользователе, например имя, фамилия, дата рождения, и др. Добавлена возможность создавать приложение MyGames через сайт MRGS (раньше нужно было ставить задачу на проект SWA).

Важно

Поскольку работа с MyGames авторизацией теперь происходит через MRGS, то старые настройки работать не будут, Вам необходимо заново создать приложение MyGames через MRGS, прописать на клиентах новый ClientID, а также на iOS изменить redirectURL, прописанный в Info.plist. Подробнее про новый подход к работе с MyGames авторизацией смотрите в документации по MyGames

Модуль Firebase:

  • Обновлен Firebase до версии 6.34.0 (FirebaseAnalytics 6.9.0) (готов к iOS 14)

Подробнее о новых функциях и их использовании читайте в документации.


v4.2.0🔗

В данной версии:

Модуль MRGService (базовый):

  • Новые методы и функциональность:

    • Добавлены методы и флаги для работы с запросом трекинга пользователя на iOS 14+, а именно проверка необходимости показа, показ, получение статуса, автоматический запрос. Подробнее про все методы, флаги, и интеграцию можете прочитать здесь
    • Добавлен метод открытия системного окна настроек приложения. Будет полезен при работе с уведомлениями и запросом на IDFA. Подробнее здесь
    • Добавлен метод getAppsFlyerID для получения уникального идентификатора AppsFlyer
  • Улучшения и исправления:

    • Расширен метод проверки интеграции. Теперь мы будем также проверять все параметры, флаги и ключи на сервере MRGS, и об ошибках настройки приложения вы узнаете сразу в логах клиента, а именно о корректных ключах MyTracker, актуальных настройках платежей, валидности сертификатов уведомлений и ключей проверки платежей.
    • Исправлены модификаторы свойств для non-arc проектов
  • Обновления внешних SDK:

    • Обновлен MyTracker до версии 2.1.2 (готов к iOS 14)
    • Обновлен AppsFlyer до версии 6.0.3 (мажорное обновление, готово к iOS 14)

Модуль GDPR:

  • Новые методы и улучшения:

    • Убран метод getAgreementVersion для перехода проектов на правильный правильный подход к работе с GDPR. Верный подход описан в документации
    • Все методы для работы с GDPR, которые принимают в себя версию соглашения помечены как deprecated. Добавлены новые методы, аналогичные старым, но без версии соглашения. Просим перевести работу на них.
    • Улучшена статистика в GDPR, добавлена статистика показа соглашений, для подсчета тех пользователей, которые не согласились с GDPR и ушли из приложения.
  • Исправления:

    • Исправлено поведение методов для CCPA - теперь получение региона не зависит от вызванных методов GDPR
    • Исправлен вызов нативных SDK в CCPA, просим после обновления еще раз удостовериться, что в логе нет ошибок вызовов включения/отключения нативных SDK.
    • Исправлены ссылки в GDPR для японского и корейского языка (раньше ссылки были нерабочими)
    • Исправлен конфликт метода lookupConstant с методом в ISMintegralAdapter на iOS

Модуль Notifications:

  • Добавлена возможность исключать некоторые пермишны при запросе разрешения на уведомления (например, оставить только баннеры, исключив звуки и бейджи). Подробнее здесь

Модуль Advertising:

  • Улучшен трекинг истории показов, таким образом, ошибок с повторным показом уже просмотренной рекламы не будет.
  • Изменен подход к проверке хешей рекламы для снижения нагрузки на сервера MRGS.

Модуль Firebase:

  • Добавлены новые события в Firebase, отсылаемые при любой покупке более 5,10,50,100 долларов. Подробнее здесь
  • Добавлено поле VALUE в события покупок в Firebase, они необходимы для закупки рекламы
  • Обновлен Firebase до версии 6.32.0 (FirebaseAnalytics 6.8.2)

Модуль Support:

  • Добавлен метод showFeedback для показа окна фидбека в MyGamesSupport (раньше можно было открыть при помощи категории, но с отдельным методом открывать будет проще и надежнее) Подробнее здесь

Подробнее о новых функциях и их использовании читайте в документации.


v4.1.5🔗

В данной версии:

  • Поддержка CCPA (ККПА). Подробнее читайте в документации CCPA
  • При авторизации через VK, MRGS сообщит vkid в MyTracker

v4.1.4🔗

В данной версии:

Мы поменяли API банка:

Теперь весь API нашего банка стандартизирован на всех трех платформах, и стал более удобным в использовании, а также более функционален.

Из основных изменений:

  • Появился новый класс MRGSBankProductsRequest в которой с помощью методов add можно добавить продукт или массив продуктов определенного типа (типы продуктов теперь стали enum'ом MRGSBankProductType). Затем этот запрос передается в новый метод requestProductsInfo.
  • Появился новый класс MRGSBankPurchaseRequest который позволяет более точно настроить параметры для начала платежа, такие как идентификатор скидки, количество (для iOS), параметр для симуляции "Ask To Buy" режима в Sandbox на iOS, и другое. Данный класс имеет удобные конструкторы для создания.
  • Изменили методы начала покупки, теперь они имеют сигнатуру purchaseProduct, и принимают в себя либо идентификатор продукта, либо идентификатор и payload, либо новый класс MRGSBankPurchaseRequest.
  • Поменяли названия методов для AppStore Promotion, просто добавив в них строку AppStorePromotionPayment, для большей понятности назначения методов.
  • Убрали параметр autoNotifyMRGSAboutConsume, т.к. это не очень правильно, нужно вызывать метод когда покупка была доставлена пользователю, а не автоматом после покупки (влияет только на игры без сервера)

Отдельно про делегат:

  • Добавили полностью новый делегат MRGSBankDelegateEx, теперь он возвращает максимум информации о покупке или о загрузке продуктов.
  • Для загрузки продуктов теперь два колбека - didReceiveProductsResponce и didReceiveProductsError, которые получают объект нового класса MRGSBankProductsResponce, содержащего в себе информацию о валидных продуктах типа MRGSBankProduct, а также массив идентификаторов невалидных продуктов, и объект ошибки в случае, если она произошла.
  • Добавили 4 типа колбеков для результатов транзакций, а именно - didReceiveSucessfullPurchase, didReceiveFailedPurchase, didReceivePendingPurchase, didReceiveCancelledPurchase. Каждый из них принимает объект класса MRGSBankPurchaseResult, описывающего результат покупки, а именно - транзакцию (MRGSBankTransaction), продукт (MRGSBankTransaction), payload и ошибку с кодом и описанием, если она произошла. MRGSBankTransaction подробно описывает транзакцию, включает в себя идентификатор, дополнительную информацию о транзакции для каждой платформы (восстановлена ли,дата, оригинальная транзакция, выбранная скидки, и другое).
  • didReceivePendingPurchase - Метод протокола, вызывается в случае зависшего платежа. Такое может произойти если при покупке ребенку нужно спросить разрешение на покупку у родителя, или другой вариант - при валидации пропал интернет, и повторная попытка валидации будет позже. Такие события не требуют дополнительных действий со стороны разработчиков, они служат только для оповещения пользователя.
  • didReceiveCancelledPurchase - Метод протокола, вызывается в случае отмены пользователем платежа.
  • Появился колбек didCompleteTransactionsRestore, который вызывается, когда процесс восстановления ранее купленных непотребляемых покупок и активных подписок закончен.

Важно - старый API мы оставили, просто пометили его как deprecated. Еще какое-то время мы будем его поддерживать, но советуем переехать на новый интерфейс, тем более переезд должен быть простым, так как основная логика работы не поменялась. Внутри сам банк мы не меняли, изменился только внешний интерфейс.

Для iOS - класс MRGSBankProduct теперь используется для возврата информации о продукте, а не для запроса продукта (старый API пока сохранен).

Подробнее про использование нового API читайте в документации по банку - https://mrgs.astrum.team/Doc/ru/payments/integration/base/


v4.1.3🔗

В данной версии:

  • Обновлен MyTracker до версии 2.0.7

v4.1.2🔗

В данной версии:

Произошли некоторые изменения:

  • В MRGSAuthenticationGameCenter в credentials.accessToken.optionalParams теперь возвращается видоизмененный словарь
  • Колбеки авторизации во всех классах MRGSAuthentication<SocialNetwork> теперь приходят в главном потоке
  • Теперь при отправке событий регистрации и логина в MyTracker в эти события автоматически добавляется установленный нам пользователь (сделано, так как MyTracker поменяли API отправки этих событий)

Также исправлены баги:

  • Исправлен краш в MRGSGameCenter, возникавший при получении ошибки от сервера.
  • Исправлен баг в нашей рекламе MRGSAdvertising, из-за которого при сворачивании на старте видео могло начать играть снова.
  • Исправлена работа делегата атрибуции MyTracker, теперь его можно выставлять до старта MRGS, а получать данные он будет более точно.

Обновлены внешние SDK:

  • Обновлен MyTracker до версии 2.0.6
  • Обновлен AppsFlyer до версии 5.4.1

Подробнее о новых функциях и их использовании читайте в документации.


v4.1.1🔗

В данной версии:

Добавлен новый модуль:

Добавлен новый модуль MRGSRecommendations, для работы с внутренней системой RecSys для получения предсказаний о том, какой продукт скорее всего пользователь захочет купить. На данный момент функция работает в beta-режиме, а модуль позволяет только отправлять необходимые для системы события в MRGS. По результатам тестирования модуль будет расширяться и дополняться новыми функциями.

Произошли изменения работе с уведомлениями:

  • Добавили флаг defferedMRGSNotificationCenterStart для удобного отложенного включения уведомлений и появления попапа. Теперь достаточно в нужный момент, когда вы хотите показать пользователю попап в первый раз, вызвать метод enableMRGSNotifications, а после этого на всех последующих запусках мы сами будем стартовать наш сервис по работе с уведомлениями. (Раньше нужно было самим вызывать метод manuallyStartCenter при показе попапа, и на каждом последующем запуске, теперь мы это делаем сами, вам достаточно вызвать метод лишь один раз в нужных момент). Таким образом, работа с отложенным показом попапа стала очень простой в реализации. Важно отметить, что при переходе на работу с этим флагом нужно учесть, что если вы обновляетесь с версии iOS 4.0.3 и выше, то все пройдет бесшовно, в противном случае для уже играющих пользователей нужно будет вызвать метод enableMRGSNotifications хотя бы раз.
  • Добавили возможность включать и выключать разные типы уведомлений на устройстве пользователя. Так, вы можете отключить локальные, серверные уведомления, или все сразу. После отключения, уведомления конкретного типа перестанут приходить пользователю, например для push-уведомлений на сервере будет инвалидирован токен, а для локальных очищена очередь и запрещено добавление новых. Данный функционал полезен для проектов, где в настройках есть переключатель доступности уведомлений.

Кроме того, произошли некоторые нововведения и изменения:

  • Проброшен делегат MyTracker для получения данных по атрибуции (deeplink и deffered deeplink)
  • Убраны зависимости MRGS SDK от CoreLocation.framework
  • Исправлена работа метода checkIntegration, теперь внутри он стал асинхронным, и более точно определяет ошибки, связанные с неверной настройкой appId/Secret и сетевых запросов.
  • Добавлена автоматическая отправка данных о впервые совершенном пользователем платеже в Firebase
  • Добавлена возможность для передачи developerPayload в метод proceedPendingPayment (начало покупки продукта со страницы AppStore)
  • Метод checkIntegration снова возвращает void, а не string, но для проектов, которые хотят получить результаты проверки интеграции не только в логе, но и в виде строки, мы добавили еще одну вариацию метода с колбеком.
  • Улучшен алгоритм генерации идентификаторов сессий session_id для более точной статистики. Так же сессия теперь "протухает" через 5 минут после сворачивания приложения
  • Увеличен номер версии соглашения GDPR

Также исправлены баги:

  • Улучшена работа автотрекинга платежей

Подробнее о новых функциях и их использовании читайте в документации.

Прекращена поддержка MCSocial

Мы прекратили поддержку MCSocial, поскольку перенесли основной функционал в модуль MRGSAuthentication, улучшив качество и правильность работы. Большинство методов не изменилось, поэтому для миграции с MCSocial на MRGSAuthentication достаточно:

  1. Поменять в коде все вхождения "MCSAuthInfo" на "MRGSAuthenticationAccessToken"
  2. Поменять в коде все вхождения "MCSocial" на "MRGSAuthentication"
  3. Поменять в коде все вхождения "MCS" на "MRGSAuthentication"
  4. Перенести параметры для соцсетей из MCSocial (appID/secret) в параметры, которые проставляются при инициализации MRGS (либо через код, либо в MRGService.plist/MRGService.xml, обратите внимание, что файлы MRGService.plist/MRGService.xml были изменены и идут в комплекте с SDK)
  5. Если вы указывали не дефолтные пермишны для соцсетей (friends в facebook, например), то необходимо использовать метод loginWithScopes, вместо обычного логина, так как пермишны теперь выставляются не в настройках, а при самом логине.
  6. На iOS можете убрать вызов метода application:openURL:sourceApplication: у класса MCSocialSettings
  7. Удалить библиотеку MCSocial из проекта вместе со связанными SDK (Facebook, OK,VK,Twitter,MailRu и другие), и импортировать SDK из MRGSAuthentication.

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


v4.1.0🔗

В данной версии:

Расширен модуль MRGSAuthentication - мы расширили список поддерживаемых социальных сетей, добавив в него такие сети как:

  • Facebook
  • VKontakte
  • Amazon
  • MyGames
  • Apple Game Center
  • Google Play Games

Напоминаем, что модуль MRGSAuthentication поможет вам быстро внедрить авторизацию в популярных сервисах и социальных сетях. Основное преимущество - универсальный API - набор основных методов авторизации реализуют все наши классы. Таким образом, вы можете настроить процесс авторизации используя абстрактный объект социальной сети, без привязки к конкретному сервису.

Обращаем внимание, модуль фейсбука работает без зависимости от нативного SDK, но тем не менее умеет вытаскивать из него данные авторизации, на наш модуль можно перейти даже с проектов, использующих сейчас нативное SDK. Также стоит отметить, что в из-за добавления новых социальных сетей, добавились и новые зависимости от VKSdk и AmazonSDK.

Подробнее про внедрение каждого из модулей и их использование читайте в документации в соответствующем разделе. Также, те проекты, которые использовали MCSocial, теперь могут перейти на новый модуль авторизации.

Кроме того, данной версии произошли некоторые нововведения и изменения:

  • Метод IntegrationCheck теперь возвращает строку, а не void, как раньше. (В остальном поведение не поменялось)
  • Добавлены новые автоматические метрики в Firebase - Purchase14D и Purchase90D в случае, если покупка была совершена в первые 14 и 90 дней соответственно.
  • Добавлен автоматический репорт MRGSBankNoUserError в раздел "Отчеты о падениях" на сайте в случае, когда на момент валидации платежа нет пользователя. (При условии, что платеж и валидация идет через наше SDK)

Также исправлены баги:

  • Исправлено отображение иконки награды в тексте кнопки в витрине MRGSGameCenter
  • Метод [MRGSDevice country] теперь возвращает пустую строку в случае отсутствия полученного от системы значения (раньше возвращалась строка "(null)")

Изменения в GDPR!

Теперь MRGS сам занимается отслеживанием версии соглашения и его обновлением. Поэтому начиная с этого релиза поле agreementVersion и все одноименные параметры, передаваемые в методы будут игнорироваться, а в последующих версиях и вовсе будут убраны.

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

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

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.9🔗

В данной версии изменена логика отправки пользователя в MyTracker, чтобы более корректно формировались связки пользователей в 1Link.

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.8🔗

В данной версии изменены url для нашего api в связи с переездом на новый домен.

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.7🔗

В данной версии обновлены внешние SDK:

  • MyTracker SDK до версии 2.0.4 ( В данной версии трекера исправлен критический баг, вызывающий креши на устройствах с iOS 10. )

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.6🔗

В данной версии обновлены внешние SDK:

  • MyTracker SDK до версии 2.0.3
  • Firebase SDK

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.5🔗

Добавлен новый модуль MRGSAuthentication + Sign in with Apple:

Мы добавили новый модуль - MRGSAuthentication. Он поможет вам быстро внедрить авторизацию в популярных сервисах и социальных сетях. Основное преимущество - универсальный API - набор основных методов авторизации реализуют все наши классы. Таким образом, вы можете настроить процесс авторизации используя абстрактный объект социальной сети, без привязки к конкретному сервису. На текущий момент мы добавили только авторизацию через Sign in with Apple, но список поддерживаемых сервисов будет постепенно расширяться. Подробнее про внедрение и использование читайте в документации в соответствующем разделе.

Кроме того, данной версии произошли некоторые нововведения и изменения:

  • Запрос ServerData теперь вызывается автоматически только при наличии делегата и установки пользователя. Это значительно поможет снизить нагрузку на сервер MRGS. (Так что если вы не используете serverData, то делегат при старте MRGS устанавливать не нужно)
  • Добавлена проверка на множественный вызов метода старта MRGS.
  • Модуль MRGSFirebase теперь может работать параллельно с другими сервисами от Firebase(например, crashlytics). Теперь если firebase уже был запущен ранее, мы будем только отсылать нужные event-ы.
  • Улучшена работа очереди отправки сообщений.

Также исправлены баги:

  • Исправлена ошибка, из за которой невалидные или восстановленные платежи могли иногда попадать в AppsFlyer.
  • Исправлены редкие креши в MRGSDevice, MRGSSendingQueue и reportErrorOfLibraryIntegration.
  • Исправления в методе для проверки интеграции MRGS (IntegrationCheck) - параметры пробрасываются более точно.
  • Исправлены минорные баги

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.4🔗

В данной версии:

  • Исправлен crash в MRGSDevice
  • Исправлен редкий crash с reportErrorOfIntegration
  • Изменена работа очереди отправки, теперь она не будет работать, пока приложение свернуто

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.3🔗

В данной версии произошли некоторые нововведения и изменения:

Новые возможности:

  • Добавили поддержку локализации GDPR. Для установки нужного языка, перед показом соглашения, установите свойство localizationLanguage у класса MRGSGDPR и передайте буквенное обозначение языка в формате ISO-639-1. Получить список доступных языков можно вызвав метод getSupportedLocalizations. Обратите внимание, что бандл с ресурсами обновлен. Старые кастомные файлы продолжат работать как раньше. Подробнее про настройку и кастомизацию читайте в документации.
  • Добавлена поддержка нового формата рекламы - Playable ads. Основанный на HTML5, данный формат дает пользователю возможность "попробовать" и поиграть в игру еще до установки. Надеемся, что данный формат будет полезен для привлечения еще большего количества игроков в проекты.

Улучшения кросс-промо:

  • Полностью изменен "дизайн" нашей видеорекламы и статических баннеров. Теперь видео и статика будут показываться на полный экран. В видеорекламе теперь есть прогресс-бар на крестике, а все кнопки и контроллы рисуются программно, поэтому из MRGSAdvertisingResources.bundle убраны картинки, не забудьте его обновить. Повышена стабильность.
  • Убран лаг перед отображением видеорекламы. ( раньше иногда мелькал черный экран на некоторое время )
  • Изменена логика работы с нажатиями на нашу рекламу, что поможет снизить фрод.

Улучшения AppsFlyer, MyTracker, Firebase:

  • Обновлены внешние SDK до последней версии: AppsFlyer (переход на версию 5.0), MyTracker (переход на версию 2.0) , Firebase.
  • В MRGSAppsFlyer добавлена возможность получения конверсий и источника установок. Для получения воспользуйтесь новым делегатом MRGSAppsFlyerDelegate. Подробнее читайте в документации.
  • AppsFlyer теперь является жесткой зависимостью нашей библиотеки MRGSAnalytics. Благодаря этому была повышена стабильность работы, уменьшены риски поломок, и снова появилась возможность включить debug-режим(логи) в AppsFlyer.
  • Убрали отправку события purchase в AppsFlyer. Теперь будет отправляться только событие af_purchase
  • Добавлены методы для управления параметрами буфера отправки MyTracker. Новые методы - setBufferingPeriod, setForcingPeriod и flush.

Остальные улучшения:

  • Теперь MRGS всегда использует протокол HTTPS для передачи данных. Можно забыть и убрать флаги NSAppTransportSecurity->NSAllowsArbitraryLoads = true.
  • Обновлен механизм работы с нашими логами (старый мог в редких случаях приводить к падениям). Добавлена возможность установки предпочитаемого уровня логирования MRGS (info,warning, error). Теперь мы сможем захватывать большее количество логов для отправки на сервер. Кроме того, добавилась возможность включения логов и отправки их на сервер с помощью открытия приложения по URL-схеме с ключом. Это позволит запускать логи даже на production-сборках. Повышена надежность.
  • Теперь мы автоматически отправляем флаг, включены ли на устройстве пуши на сервер MRGS. Теперь он отражается в карточке устройства на сайте, и, кроме того, если Вы попытаетесь отправить уведомление на устройство с выключенными уведомлениями, MRGS Вас об этом предупредит.
  • Добавлена поддержка нового механизма работы с окнами на iOS - UIScene. (Когда одно приложение может быть запущено в нескольких экземплярах параллельно).
  • В качестве базового адреса для MyComSupport теперь используется новый widget.support.my.games
  • Улучшена работа с памятью при работе с WebView

Также исправлены баги:

  • Исправлена работа при отсутствии тикетов в myComSupport после их переезда. ( Раньше возвращалась ошибка при отсутствии тикетов )
  • Исправлена работа автотрекинга платежей (иногда были проблемы с производительностью)
  • Исправлена работа с Firebase согласно описанию распространенных проблем. Может улучшить качество автоматического трекинга событий.
  • Исправлено отображение слайдера кросс-промо на iPad.
  • Исправлена работа свойства launchedURL.
  • Другие незначительные исправления.

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.2🔗

В данной версии произошли некоторые нововведения и изменения:

  • Событие покупки в AppsFlyer теперь передается с именем "af_purchase". Старое событие с именем "purchase" осталось.
  • Улучшена валидация покупок в автотрекинге. Для тех, у кого были вопросы - еще раз проверили, sandbox/боевые/невалидные платежи верно определяются.
  • При автотрекинге платежей, мы автоматически отправим информацию о всех валидных платежах во все подключенные сторонние SDK (Firebase, Appsflyer)
  • Полностью обновился API по работе с пользователями. Старые методы убраны. Теперь есть только один метод для установки идентификатора пользователя.

События покупок в AppsFlyer

Событие покупки в AppsFlyer теперь передается с именем af_purchase. Старое событие с именем purchase также осталось.

Также исправлены баги:

  • Исправлено отображение роллера пилигрим на iPad

Новый API для пользователей!

Теперь нет необходимости регистрировать, а затем авторизовать пользователя. Больше не нужно строить сложную логику вокруг простой установки пользователя нам, наконец то это произошло) Теперь достаточно вызывать метод setUserId.
Однако, для корректного подсчета статистики на стороне MyTracker, необходимо вызывать два метода - trackRegistrationEvent и trackLoginEvent у класса MRGSMyTracker.
Обратите внимание, что старый API полностью убран из SDK.
Зачем мы так сделали? Сейчас все события регистрации/авторизации неверно определяются в MyTracker, с кастомными именами event'ов, что затрудняет работу менеджеров. Оставление старых методов не могло гарантировать верный переход проектов на работу с пользователями, и корректную отправку статистики. Так как новый API крайне прост, будет очень легко на него перейти, и реализовать более корректный трекинг событий, связанных с пользователем.

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.1🔗

В данной версии произошли некоторые нововведения и изменения:

  • Появился автоматический трекинг платежей, теперь можно не передавать нам ваши платежи вручную, мы автоматом соберем всю необходимую информацию. Для использования, выставьте флаг automaticPaymentTracking в true. Также, не забудьте добавить ключ проверки платежей на сайт MRGS.
  • Улучшение алгоритма показа видеорекламы, позволяющее загружать меньше данных на устройство, и быстрее заводить кампании на сервере
  • Обновлены версии внешних SDK.
  • Улучшена документация на английском языке

Также исправлены баги:

  • Исправлены параметры сборки, при которых в Info.plist бандлов с ресурсами попадали поля, из-за которых не получалось залить приложение в TestFlight
  • Исправлен баг, из за которого на iOS 13 видеореклама могла не показываться пользователю (окно с рекламой было под игровым).

Собрано версией XCode 11.2. Внимание! Для проектов, не перешедших на модули, мы выпустили версию 3.8.93 с исправлением вышеуказанного бага.

Подробнее о новых функциях и их использовании читайте в документации.


v4.0.0🔗

Мы поделили наш iOS фреймворк на модули, вслед за Android.

В данной версии были сделаны глобальные изменения по составу нашей библиотеки. Теперь MRGS состоит из 9 библиотек. Основной - MRGService.framework, содержащий в себе основные необходимые функции.

Для использования наших дополнительных возможностей - добавьте соответствующие фреймворки в проект (например, платежи, уведомления, реклама, геймцентр), и они автоматически будут запущены (модуль аналитики, например, при добавлении автоматически начнет передавать данные в подключенные внешние SDK).

Для вашего удобства мы сделали глобальный header MRServiceKit.h и module MRServiceKit, который теперь будет автоматом подключать к файлу все добавленные в проект модули(фреймворки).

Миграция со старых версий: {:migration-guide-4.0.0}

  1. Метод MRGSBank - sendPaymentInfoForProduct:transaction: переехал в класс MRGSMetrics, то есть достаточно заменить [[MRGSBank sharedInstance] sendPaymentInfo... на [MRGSMetrics sendPaymentInfo...
  2. Для доступа к объектам рекламы теперь используется класс MRGSAdvertisingManager, сигнатуры остались те же. То есть необходимо заменить [MRGServiceInit sharedInstance] на [MRGSAdvertisingManager sharedInstance]
  3. Для доступа к API внешних SDK теперь используется класс MRGSAnalytics
  4. Методы, необходимые для отслеживания уведомлений didFinishLaunchingWithOptions: и startObservingWithLaunchingOptions: заменены на единственный [MRGServiceInit application: didFinishLaunchingWithOptions:];
  5. Теперь вместо одного общего бандла с ресурсами у нас для каждого фреймворка, у которого есть ресурсы - свой бандл с соответствующим названием.
  6. Советуем добавить файл MRServiceKit.h в проект, и заменить все вхождения #import <MRGService/MRGService.h> на #import "MRServiceKit.h" или @import MRGServiceKit;

Также в данной версии произошли некоторые нововведения и изменения:

  • У нас появилась документация на английском языке, для доступа смените язык на сайте MRGS, и перейдите в "Documentation - iOS/MacOS Documentation"
  • Улучшен вид слайдера в кросс-промо для девайсов с безрамочными экранами
  • Улучшена логика запросов наличия рекламы
  • Появилась поддержка Firebase (платежи, запуски, пользователи). Находится в MRGSFirebase.framework.
  • Обновлены сторонние SDK
  • Добавлена автоматическая линковка системный библиотек, теперь достаточно просто добавить наши фреймворки в проект, и он сразу соберется, залинковав необходимые каждому модулю библиотеки.
  • Добавлена поддержка модулей (конструкция вида @import MRGServiceKit;) для каждой из наших библиотек, а также универсальный модуль, импортирующий все добавленные в проект фреймворки. Такой подход может ускорить сборку приложения.
  • Изменена структура фреймворка, теперь в нем нет симлинков, что позволит легче работать с ними пользователям Windows и Unity.

Внимание. Собрано версией XCode 10.2.1. Следующая сборка будет уже на новом XCode.

Пример интеграции можете найти в архиве с версией в папке Example.

Подробнее о новых функциях и их использовании читайте в документации.

При возникновении вопросов, обращайтесь к нам, мы обязательно поможем.


v3.8.93🔗

В данной версии:

  • Исправлен баг, из за которого на iOS 13 видеореклама могла не показываться пользователю (окно с рекламой было под игровым).

v3.8.92🔗

В данной версии:

  • Исправлен краш при получении объекта рекламы на iOS 13

v3.8.91🔗

В данной версии:

  • Исправлена работа MyComSupport с категориями
  • Исправлен краш при показе UIAlertView в MRGSBank (при ошибке проведения транзакции)

v3.8.90🔗

В данной версии произошли некоторые нововведения и изменения:

  • Улучшено отслеживание событий в слайдере пилигрима, это позволит собирать более точную статистику.
  • Полностью убрали UIWebView из кода, так как Apple при ревью обращает на это внимание.
  • Если в кампании пилигрима указана невалидная ссылка, то она не будет показана пользователю.
  • В GDPR добавлены страны: Норвегия, Лихтенштейн, Исландия.

Также исправлены баги:

  • Исправлена ошибка обрезания слайдера пилигрима на устройствах формата iPhone X (безрамочных)
  • Исправлен редкий креш на iOS 13
  • Другие исправления ошибок и улучшения

Подробнее о новых функциях и их использовании читайте в документации.


v3.8.89🔗

  • Переделана отправка данных о платеже в AppsFlyer

v3.8.88🔗

  • Добавилось свойство launchedUrl у класс MRGServiceInit, в котором хранится URL с которым приложение было запущено

v3.8.87🔗

В данной версии произошли некоторые нововведения и изменения:

  • Исправление возможных причин креша пилигрима.
  • Улучшена реакция на нехватку оперативной памяти в системе
  • Исправлены warning для non-arc проектов
  • Добавлен метод получения списка купленных непотребляемых товаров из чека
  • Поддержка автоматического переключения http/https

Подробнее о новых функциях и их использовании читайте в документации.


v3.8.86🔗

В данной версии обновились версии внешних SDK: AppsFlyer, Chartboost, Flurry, MyTracker, MyTarget


v3.8.85🔗

В данной версии произошли некоторые нововведения для работы с подписками:

Мы добавили новый API для работы с чеком приложения. С помощью него вы можете:

  • Проверить "доступность" начальной (introductory) скидки для пользователя
  • Проверить "доступность" скидки (apple subscription offers) для пользователя
  • Получить список активных подписок
  • Получить список всех когда-либо купленных подписок
  • Получить интересующую информацию о конкретной подписке

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

Инструкцию по использованию и полное описание API читайте в разделе "Bank" в документации


v3.8.84🔗

В данной версии произошли некоторые нововведения и изменения:

  • Улучшена работа метода проверки интеграции.
  • Немного улучшена схема репорта о платежах (относится только к отправке готовой информации о транзакции через нас)
  • Загрузка файлов пилигрима перенесена в Cache директорию. Также, теперь загруженные ранее компании переиспользуются, а не загружаются заново. (Раньше файлы сохранялись в директорию Documents, из-за этого реклама занимала место в iCloudDrive у пользователя (хотя после просмотра, конечно, удалялась). Также, мы не использовали уже загруженную рекламу, и загружали ее снова (допустим, при перезагрузке игры).
  • Изменена логика работы с незавершенными транзакциями в банке и исправлен важный баг. Теперь процесс стал надежнее и прозрачнее. Благодаря этому исправлена ошибка, когда транзакция "терялась" в очереди, и мы о ней ничего не сообщали, что приводило к невозможности снова купить продукт, и помогало только восстановление платежей. Теперь сразу после загрузки продуктов мы обработаем все незавершенные транзакции в очереди. Поэтому тем, кто использует восстановление платежей на старте приложения для избежания таких ситуаций, советуем его убрать, так как в нем нет необходимости, а по гайдам вообще должна быть кнопка.
  • добавили проброс метода application:continueUserActivity:restorationHandler: в MyTracker, так что если вдруг Ваш продукт может использовать Handoff, то Вам необходимо добавить данный метод в свой AppDelegate

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

Подробнее о новых функциях и их использовании читайте в документации.


v3.8.83🔗

В данной версии произошли некоторые нововведения и изменения:

  • Поддержка MyTracker deeplink. Теперь мы пробрасываем их в MyTracker
  • Немного улучшили отправку crash report'ов, теперь отправляется backtrace при возникновении "signal" или "open nil url"
  • Изменили схему трекинга показов видео. Теперь информация о показе отправляется раньше (по такой же схеме как и у основных рекламных сетей IronSource и прочее). Это сделано для того, чтобы отслеживать показы одинаково и сократить время выдачи награды за просмотр
  • Добавлен метод для поверки интеграции MRGS. Вызовите метод [[MRGServiceInit sharedInstance] checkIntegration];, и в логах будет выведен отчет о правильности интеграции, вызванных или не вызванных методах, рекомендации по исправлению существующих ошибок, а также все параметры, с которыми был запущен MRGS.
  • В MRGSNotificationCenter добавлен callback, уведомляющих Вас о принятии/отклонении пользователем разрешения на отсылку уведомлений. Особенно востребован данных метод может быть в том случае, если Вы запрашиваете разрешение на отправку уведомлений не на старте приложения, и ждете, пока пользователь согласится или откажется.

Также исправлены баги:

  • Исправлен возможный баг при старте приложения с MRGSNotificationCenter
  • Исправлена ошибка многократной загрузкой serverData, теперь всего одно сообщение может находиться в очереди, что гарантирует оптимальность загрузки

Подробнее о новых функциях и их использовании читайте в документации.


v3.8.82🔗

В данной версии исправлены баги:

  • Исправлено получение локали для myComSupport, теперь локаль получается из предпочитаемых языков. (Раньше локаль могла определиться неверно, если приложение не локализовано на необходимый язык.)
  • Исправили возможную ошибку с потерей payload при покупках в приложении.

Также произошли некоторые нововведения и изменения:

  • Теперь получение списка продуктов банка будет происходить вне зависимости от того, разрешены ли inapp покупки на устройстве, или нет.
  • Изменили работу поля serverTime в классе MRGServiceInit. Теперь оно постоянно отражает актуальное текущее время на сервере, и проставляется после первого получения данных с сервера.
  • Мы решили понемногу избавляться от поддержки нами платформы MyTarget, поэтому на данных момент времени мы убрали упоминание о ней в документации.
  • Добавлена поддержка нового API Apple Subscription Offers, которое позволяет делать скидки на подписку. (Добавлен новый метод в класс MRGSBank)

Подробнее о новых функциях и их использовании читайте в документации.


v3.8.81🔗

В данной версии исправлены баги:

  • Исправлена ошибка, когда приложение падало, если вдруг в очереди есть отложенные покупки, и вызывался метод восстановления платежей.
  • Исправлена ошибка обрезания баннера пилигримма в горизонтальном положении (для роллера)
  • Исправлена ошибка в новом NotificationCenter - при регистрации категорий, массив action'ов(кнопок) может быть пустым или nil
  • Исправлено условие отправки метрик в пилигриме (теперь метрики статистики пилигримма более точно и верно отражают картину происходящего(ошибки, креши, ошибки загрузки, hash и др.).
  • Исправлен краш, когда не было файла видео, а пилигрим открывался.
  • Исправлен баг, когда при первом старте приложения метод ApplicationDidBecomeActive вызывался два раза - системой и нами, из за этого в appsFlyer два раза отправлялось событие запуска.

Также произошли некоторые нововведения и изменения:

  • Добавлена поддержка архитектуры ARM64e
  • Теперь при формировании подписи в myComSupport используется серверное время(MRGS server time), если оно было получено к этому моменту. (Чтобы подпись генерировалась верно, вне зависимости от времени пользователя)
  • Улучшился трекинг доставленных уведомлений на новом NotificationCenter
  • Добавлена автоматическая отправка event'a о регистрации пользователя в myTracker, чтобы проекты могли считать уникальных пользователей и установок
  • Переделан класс для работы с OpenUDID. Теперь он работает с ARC, не использует много слотов в pasteboard, получает IDFV, и более надежно хранит данные.
  • Настройки трекинга геолокации теперь дублируются из MRGS в MyTracker, так как в iOS 12.2 myTracker тормозит debug-загрузку из за вызовов UI Api в Background потоке.
  • В GDPR изменился API. Теперь метод showAgreementAtViewController:forAppId:fromFile:withVersion считается deprecated, так как параметр version мог вызвать конфликт со свойством agreementVersion. Добавлен метод showAgreementAtViewController:forAppId:fromFile:, считающийся теперь основным.

Ну и конечно, новые функции в GDPR:

Появилась возможность показывать свой кастомный интерфейс в GDPR. Больше не нужно возиться с HTML, скоростью их загрузки и версткой.

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

Подробнее про данную функцию читайте в документации по GDPR.


v3.8.80🔗

В данной версии исправлен баг, который мог приводить к deadLock при принятии GDPR.


v3.8.74🔗

В данной версии представлено исправление багов:

  • GDPR. Исправлена ошибка, когда на iPhone X не центрировалось окно соглашения, а также ошибка скейлинга. Если Вы используете кастомный файл соглашения, проверьте, корректно ли он отображается, т.к. WKWebView может вести себя по-другому, нежели чем старый UIWebView.
  • MyTracker. Исправлена ошибка, из-за которой в MyTracker никогда не передавались идентификаторы пользователей (UserID), т.е. всегда вызывалось [trackerParams setCustomUserId: nil]. Теперь в событиях в админке myTracker Вы сможете наблюдать идентификатор пользователя.
  • Bank. Исправлено падение при попытке сделать покупку/restore удаленных из AppStore продуктов, которые ранее были валидны и зависли.
  • GDPR. Добавлен новый параметр, позволяющий задать цвет фона во время загрузки файла соглашения. Для этого воспользуйтесь свойством backgroundColorForWebView. При использовании, поле необходимо установить до начала показа соглашения.
  • Документация. В документации добавлен раздел: "Известные баги по версиям MRGS", в котором Вы можете найти известные нам баги в разных версиях, и когда они были исправлены.

v3.8.73🔗

В данной версии представлено небольшое исправление:

  • GDPR. Исправлена ошибка ссылок в соглашении, которые нельзя было нажать.
  • Bank. Добавлены логи в действиях с промо продуктами AppStore.

v3.8.70🔗

В данной версии представлено:

  • MRGSMyTracker. Мы сделали обертку для отправки событий напрямую в MyTracker.
  • Bank. В данной версии исправлено пропадание developerPayload из платежа. Также, исправлено раннее закрытие платежей, из-за чего они могли теряться.
  • Piligrimm Metrics. Теперь можно наблюдать точную картину поведения пользователя при просмотре рекламы. На наш сервер теперь отправляются 4 типа событий: во время просмотра произошел креш, пользователь закрыл приложение во время просмотра рекламы, ошибка загрузки кампании, ошибка с проверкой хеша кампании. Таким образом, статистика станет более понятной.
  • Текстовые метрики. Раньше Вы могли отправлять метрики MRGS, состоящие только из числовых значений, теперь добавилась возможность отправлять метрики с текстовым ключом.

v3.8.69🔗

Важное обновление:

  • Исправлена работа GDPR! В версиях MRGS с 3.8.66 по 3.8.68 был баг, в связи с которым при обновлении с версий до .66 на версии .66-.68 окно GDPR показывалось еще раз.
  • Версии сторонних SDK. Теперь, если версия стороннего SDK не совпадает с версией, поддерживаемой MRGS, это приведет к падению приложения на старте и выводу соответствующей записи в лог. Таким образом, ситуаций, когда MRGS был обновлен, а сторонние библиотеки нет (что приводило к ошибкам в статистике), не будет.
  • Logs - Исправлен креш в логах.

Если у Вас встроен MRGS версии с 3.8.66 по 3.8.68, то мы настоятельно рекомендуем его обновить на данную версию.


v3.8.68🔗

В данной версии мы сделали:

  • Новые уведомления. Мы полностью переделали работу с уведомлениями, теперь за них будет отвечать новый класс MRGSNotificationCenter, и он наконец-то поддерживает новую библиотеку от Apple (UNUserNotificationCenter для IOS 10+), то есть использует новейшее API, оставляя при этом поддержку и старого API (для IOS 8-9). С помощью данного класса вы сможете:
    • Гибко настраивать отправку и условия срабатывания уведомлений (Интервал, дата, локация, повторение).
    • Добавлять в уведомления кнопки и кастомизировать их вид.
    • Настраивать группировку уведомлений в IOS 12+, включая вид summary и его аргументы.
    • Добавлять вложения к уведомлениям.
    • Добавлять собственные звуки к уведомлениям.
    • Получить настройки уведомлений пользователя для Вашего приложения.
    • Управлять доставленными и запланированными уведомлениями, заменять их, удалять и корректировать.
    • Даже если Вы не хотите полностью использовать MRGS для уведомлений, Вы можете отправлять уведомления через нас.
    • Получать callback'и о нажатии и приходе как локальных, так и серверных уведомлений.

Важно!

В связи с необходимостью плавного перехода проектов на новый API, мы добавили новое поле в MRGService.plist (Находится в архиве с библиотекой). Если Вы будете переходить на новый центр уведомлений, не забудьте установить соответствующий флаг в настройках. Подробнее читайте в документации, находящейся в архиве с библиотекой. Все пункты выше применимы как к локальным, так и к серверным уведомлениям.

  • Переписали буфер отправки. Теперь работа буфера более надежная, быстрая и простая. Например, реклама в Piligrimm может быть загружена в два раза быстрее.
  • MyComSupport, GDPR - переехали на WKWebView, более новый класс для работы с web.
  • MyComSupport - переехал на новый API. Также были исправлены некоторые ошибки.
  • Архитектуры. Мы убрали поддержку архитектуры armv7s, так как многие библиотеки (например, AppsFlyer, FBSDK, Flurry) отказались от нее, и все равно необходимо собирать под armv7 вместо armv7s.

Важно!

В данной версии присутствует баг с GDPR, исправленный в версии 3.8.69. Обновитесь до последней версии библиотеки.


v3.8.67🔗

В данной версии представлено небольшое исправление:

  • Piligrimm. Теперь на сервер MRGS отправляются данные о том, была ли пропущена реклама, а также developerPayload, который Вы можете добавить.

Важно!

В данной версии присутствует баг с GDPR, исправленный в версии 3.8.69. Обновитесь до последней версии библиотеки.


v3.8.66🔗

В данной версии мы многое для Вас сделали и починили:

  • Метрики. Теперь метрики будут накапливаться в очередь перед отправкой, чтобы снизить энергопотребление и траффик. При этом мы гарантируем их доставку даже при резком закрытии или краше.
  • Отправка информации о крашах. Мы это починили, теперь на сервер MRGS снова будут отправляться отчеты о падениях(причины, время, устройство, и многое другое), которые Вы сможете посмотреть в админке.
  • Логи на сервере. Теперь, если пометить любое устройство как тестовое в админке MRGS, то оно начнет отсылать все логи на наш сервер, где Вы сможете их просмотреть и быстро разобраться, что же идет не так.
  • GDPR fix. На некоторых IOS все данные, записанные в NSUserDefaults пропадали(проблемы в IOS). Из-за этого иногда можно было увидеть экран GDPR уже после того, как пользователь согласился. Поэтому информация о соглашении теперь хранится в файле на диске.
  • Push settings. Теперь у Вас есть возможность получить настройки уведомлений пользователя. Для этого воспользуйтесь методом getUserSettingsWithCompletionHandler(вернет объект MRGSNotificationSettings) или isNotificationsEnabledWithCompletion(вернет TRUE, если включены ХОТЯ БЫ баннеры).
  • Push notifications. У делегата появился новый метод userClickedOnRemoteNotification, который вызывается при клике на уведомление пользователем. Также, была исправлена работа метрик по пуш уведомлениям (раньше событие клика отправлялось на приход пуша и на клик). Теперь события клика и доставки соответствуют своим названиям).
  • Piligrimm. Теперь при нажатии на баннер пользователь сразу будет попадать в AppStore, без редиректов через Safari.
  • Документация. В архиве добавлена бета-версия нашей новой документации по IOS, отзывы будут приветствоваться!

Важно!

В данной версии присутствует баг с GDPR, исправленный в версии 3.8.69. Обновитесь до последней версии библиотеки.


v3.8.65🔗

  • Исправлена работа буфера отправки сообщений на сервер. (Исправлен баг, в результате которого буфер не сохранялся на диск. Сейчас сохранение буфера на диск восстановлено. Обновление рекомендуется для тех проектов, в которых возможна работа пользователя баз интернета.)

v3.8.64🔗

  • Изменился протокол обращения к MyCom Support. Теперь параметр signature (раньше sig) использует день месяца, для того чтобы ссылка была валидна только один день.
  • Таймаут запроса страны по GEO IP для GDPR уменьшен до 5 секунд, чтоб пользователь не ждал долго открытия окна на запуске приложения
  • Обращение к MyTracker теперь напрямую, без использования рефлекшн
  • Обновлены сторонние SDK

v3.8.63🔗

  • Исправлено повторное отправление лога о согласии с GDPR

v3.8.59🔗

  • Исправлено отображение GDPR на разных устройствах

v3.8.58🔗

  • Обновился модуль GDPR. Корректно отображается на iPhone X
  • Запрос на причастность страны к GDPR создается один раз

Внимание! Не забудьте обновить MRGServiceResource.bundle!

Пример использования

- (void)viewDidLoad {
    MRGSGDPR* gdpr = [MRGSGDPR sharedInstance];
    gdpr.delegate = self;
    UIViewController *rootController = [UIApplication sharedApplication].keyWindow.rootViewController;

    [gdpr showDefaultAgreementAtViewController:rootController forAppId:38];
}
- (void)userHasAcceptedGDPR:(MRGSGDPR*)gdpr withAdvertising:(BOOL)flag {
    [self initMRGS];
    //Начинаем загрузку приложения/игры
}

- (void)errorShowingAgreement:(MRGSGDPR*)gdpr {
    //Что-то пошло определенно не так. Валим отсюда.
}

v3.8.57🔗

  • Обновился модуль GDPR. Теперь есть поддержка определения страны по GEO IP
  • Свойство agreementVersion теперь должно корректно работать

v3.8.56🔗

  • Добавлена поддержка GDPR. Для отображения соглашения необходимо воспользоваться классом GDPR

Внимание! Не забудьте обновить MRGServiceResource.bundle!

Пример использования

- (void)viewDidLoad {
    MRGSGDPR* gdpr = [MRGSGDPR sharedInstance];
    gdpr.delegate = self;
    UIViewController *rootController = [UIApplication sharedApplication].keyWindow.rootViewController;

    [gdpr showDefaultAgreementAtViewController:rootController forAppId:38];
}
- (void)userHasAcceptedGDPR:(MRGSGDPR*)gdpr withAdvertising:(BOOL)flag {
    [self initMRGS];
    //Начинаем загрузку приложения/игры
}

- (void)errorShowingAgreement:(MRGSGDPR*)gdpr {
    //Что-то пошло определенно не так. Валим отсюда.
}

v3.8.55🔗

  • Добавлена поддержка нового API MyCom Support для проверки наличия ответов на тикеты. Внимание! Теперь перед проверкой тикетов необходимо выставлять Secret, как это делалось раньше перед открытием окна MyCom Support
MRGSMyComSupport *support = [MRGSMyComSupport sharedInstance];
support.secret = @"sgfd23f";
support.delegate = self;
[support checkTickets];
  • Исправлена проблема некорректного выбора изображений для баннеров Пилигрим

v3.8.54🔗

  • Изменена логика выбора разрешения изображений в Пилигрим для экранов 1921px и выше

v3.8.53🔗

  • Добавлена поддержка загрузки изображений в разных разрешениях для роллера в Пилигрим.
  • Исправлена ошибка приводящая к возможному падению в функции problemOpenURL

v3.8.52🔗

  • Добавлена возможность при открытии окна MyCom Support добавлять дополнительные параметры в формате JSON
MRGSMyComSupport *support = [MRGSMyComSupport sharedInstance];
[support addExtraParam:@"{\"vip\" : true}"];
[support showSupportViewOnSuperview:rootView];

v3.8.51🔗

  • Исправление ошибки с потерей developerPaylod

v3.8.50🔗

  • Изменения в MRGS Пилигрим

v3.8.49🔗

  • Изменения в MRGS Пилигрим

v3.8.48🔗

Важно!

Метод closePayment: в MRGSBank объявлен как deprecated, из-за его частого и неправильного использования. Если ваша игра выдает награду не через сервер, то используйте метод notifyMRGSAboutConsume:

Внесены изменения для обнаружения проблем с потерей developerPayload при платежах. Лог об ошибке будет отправлен в трех случаях:

  • в метод addPayment: withDeveloperPayload: передана пустая строка
  • произошла ошибка при парсинге developerPayload
  • полученный developerPayload отличает от того, который был передан при вызове метода addPayment: withDeveloperPayload:.

v3.8.47🔗

  • Добавилась поддержка передачи дополнительной информации (developerPayload) в локальных и серверных пуш уведомлениях. Для использования необходимо создать пуш
MRGSLocalNotification *localNotification = [[MRGSLocalNotification alloc] initWithTitle:@"Test notification"
                                            identifier:[NSString stringWithFormat:@"test%f", [[NSDate date] timeIntervalSince1970]]
                                            date:[NSDate dateWithTimeIntervalSinceNow:15]];

localNotification.developerPayload = @{@"params" : @"hello, world!"};
[[MRGSNotificationManager sharedInstance] scheduleLocalNotification:localNotification];
[[MRGSNotificationManager sharedInstance] registerLocalNotificationDelegate:self];

У делегата будет вызван метод - (void)didReceiveLocalNotification:(MRGSLocalNotification *)notification в notification.developerPayload ваши данные.

Так же появилась возможность установить делегат на приход серверных пуш уведомлений

[[MRGSNotificationManager sharedInstance] registerRemoteNotificationDelegate:self];

где self должен реализовать протокол

@protocol MRGSRemoteNotificationDelegate <NSObject>
- (void)didReceiveRemoteNotification:(MRGSLocalNotification*)notification;
@end

После получения серверного пуша будет вызван метод

- (void)didReceiveRemoteNotification:(MRGSLocalNotification*)notification {
    // notification.developerPayload - объект NSDictionary, содержащий "Дополнительные параметры"
}

v3.8.46🔗

  • Обновлен myTarget до версии 4.6.25

v3.8.44🔗

  • Дополнительные логи для Piligrim

v3.8.43🔗

  • Визуальные изменения в Piligrim

v3.8.42🔗

  • Изменен режим работы с promoted iap. Методы hasPendingPayment и proceedPendingPayment надо вызывать каждый раз при разворачивании приложения.

v3.8.41🔗

  • Добавилась функция для упрощения передачи информации из Unity.
void mrgs_bank_send_payment_info(const char *product, const char *transaction);

v3.8.40🔗

  • В MRGService.plist, в раздел Options, добавился параметр disablePaymentsCheck. Если он установлен в YES (true), то MRGS не будет обрабатывать транзакции из SKPaymentQueue
<key>Options</key>
<dict>
    <key>disablePaymentsCheck</key>
    <true/>
</dict>

v3.8.39🔗

  • Обновился интерфейс MRGS Piligrim

v3.8.38🔗

  • В MRGSBank добавлен метод получения информации о продукте, покупаемом со страницы магазина AppStore (iOS 11 и выше). Возвращает объект типа SKProduct. Метод может вернуть nil, если продукта нет.

[[MRGSBank sharedInstance] getPendingProduct];


v3.8.37🔗

  • Добавлена поддержка Promote InApp Purchase из AppStore для iOS11

Для покупки продукта, после того, как пользователь кликнул по нему в магазине, необходимо сделать следующее. После запуска приложения, в тот момент, когда приложение полностью проинициализировано и загружен список продуктов из банка с помощью метода [[MRGSBank sharedInstance] loadProductsWithTypesFromAppleServer:]; необходимо вызвать метод [[MRGSBank sharedInstance] hasPendingPayment]; Это метод, если он вернул YES, значит есть покупка, которую хотел совершить пользователь. В этом случае необходимо вызвать метод [[MRGSBank sharedInstance] proceedPendingPayment]; Начнется обычный процесс покупки продукта, аналогичный тому, если был вызван метод [[MRGSBank sharedInstance] addPayment:];

Если есть желание спрятать inapp продукт со страницы магазина для конкретного пользователя, необходимо вызвать метод [[MRGSBank sharedInstance] hideProductInStore:completionHandler:]; Для того, чтобы его опять показать [[MRGSBank sharedInstance] showProductInStore:completionHandler:]; Для проверки состояния отображения [[MRGSBank sharedInstance] isProductVisibleInStore:completionHandler:];


v3.8.36🔗

  • Исправлены ошибки

v3.8.35🔗

  • Убраны CFBundleVersion и CFBundleVersionString из Info.plist MRGSResouces.bundle

v3.8.34🔗

  • Исправлена ошибка, когда в InterstitialSlider от MyTarget не передавался mrgsAppId

v3.8.33🔗

  • Убран CFBundleExecutable из Info.plist MRGSResources.bundle

v3.8.32🔗

  • Обновление библиотеки MyTarget до версии 4.6.19
  • Обновление библиотеки MyTracker до версии 1.6.0

v3.8.31🔗

  • Если включен MyTracker, то теперь по умолчанию все метрики MRGS транслируются в MyTracker. Если есть желание это отключить, то в MRGService.plist, в секции MyTracker необходимо добавить поле forwardMetrics (Boolean) и установить его значение в NO. Если ваш проект инициализирует MRGS из кода, без использования plist файла, то при создании MRGSMyTrackerParams необходимо установить MRGSMyTrackerParams.forwardMetrics = NO

v3.8.30🔗

  • При осуществлении платежа теперь можно добавлять информацию (developerPayload), которую бы вы хотели получить обратно после успешной операции. Для этого воспользуйтесь методом [MRGSBank addPayment:withDeveloperPayload:] либо [MRGSBank addSubscriptionPayment:withDeveloperPayload:]. Так же необходимо реализовать метод paymentSuccessful:answer:withDeveloperPayload: у класса, реализующего протокол MRGSBankDelegate. Данный метод помечен как @optional и реализация его не обязательна

v3.8.29🔗

  • Исправлены ошибки

v3.8.28🔗

  • Изменения в скриптах сборки

v3.8.27🔗

  • Исправлены ошибки

v3.8.24🔗

  • Исправлено падение в MRGServiceInit.m:153

v3.8.22🔗

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

Пример использования:

[MRGSLogs setExternalLogWriter:^(NSString *logString) {
    NSLog(@"externallog %@", logString);
}];

v3.8.12🔗

  • Обновлена библиотека myTarget до версии 4.6.14
  • Обновлена библиотека myTracker до версии 1.5.12

v3.8.11🔗

  • Исправлено падение внутри -[MRGSBank sendLogForPayment:]

v3.8.10🔗

  • Исправлено падение внутри -[MRGSBank getDictionaryWithCryptString:andError:]

v3.8.9🔗

  • Обновлена библиотека myTarget до версии 4.6.9

v3.8.8🔗

  • Исправлена ошибка вызова метода [MRGSBank loadProductsWithTypesFromAppleServer:] несколько раз

v3.8.6🔗

  • Переделан механизм отправки SearchAds (ADClient requestAttributionDetailsWithBlock)
  • Обновлен myTarget до версии 4.6.4

v3.8.5🔗

  • Обновился AppsFlyer до версии 4.6.3

Внимание!

AppsFlyer.framework зачем-то переименовали в AppsFlyerLib.framework - не забудьте удалить старый и прописать в зависимостях новый

в MRGS MRGSAppsFlyer метод notifyEvent:eventValue: теперь deprecated, используйте notifyEvent:eventValues: (подробнее в документации AppsFlyer)

  • Chartboost 6.6.1
  • Flurry 7.9.2
  • myTarget 4.6.2

v3.8.4🔗

  • Добавлена возможность подписываться на колбек о пришедшей локальной нотификации. Для этого необходимо как можно раньше вызвать метод [[MRGSNotificationManager sharedInstance] registerLocalNotificationDelegate:self]; Где self - это объект, который реализует протокол MRGSLocalNotificationDelegate
  • Исправлена ошибка - метрика запуска приложения считалась дважды

v3.8.3🔗

  • Исправлено падение приложения при "смахивании" пришедшей remote нотификации

v3.8.2🔗

  • Добавилась поддержка Interstitial API из myTarget

Внимание!

Для использования нового API важно добавить в MRGService.plist в раздел MyTarget(Adman) пункт interstitialSlotId

Работа с новым API идентична работе с обычной витриной. Сначала необходимо выставить делегат метод [MRGSMyTarget sharedInstance].delegate = self Затем необходимо вызвать метод загрузки данных для витрины [[MRGSMyTarget sharedInstance] loadInterstitialSliderAd] После того как придет колбек mrgsMyTargetDidReceiveInterstitialSliderAdData:(MRGSMyTarget *)mrgsMyTarget можно показать витрину с помощью вызова [mrgsMyTarget openInterstitialSliderAdWithViewController:self];


v3.8.1🔗

  • Библиотека myTracker обновилась до версии 1.5.5

v3.8.0🔗

  • Добавилась поддержка покупки подписок
  • Библиотека myTarget обновилась до версии 4.6.1

Внимание!

Внимание! Метод - (void)loadProductsFromAppleServer:(NSSet*)productIdentifiers у класса MRGSBank теперь deprecated и используется для обратной совместимости.
Для покупки подписок необходимо использовать новый метод -(void)loadProductsWithTypesFromAppleServer:(NSArray*)products
Этот метод необходимо вызывать один раз перед методом addPayment или перед методом - (void)restorePurchase. Желательно вызвать его как можно раньше.

На данный момент нет возможности проверить, как будет вести себя приложения, если пользователь сменил тип подписки не через приложение, а через iTunes.

Пример использования:

NSArray* products = [NSArray arrayWithObjects:[MRGSBankProduct productWithId:@"ru.akeb.framework.testNonConsumable22" andType:@"noncons"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.testConsumable11" andType:@"cons"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.subs1" andType:@"subs"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.subs2" andType:@"subs"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.subs3" andType:@"subs"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.subs10" andType:@"subs"],
                     [MRGSBankProduct productWithId:@"ru.akeb.framework.subs11" andType:@"subs"],
                     nil];
[[MRGSBank sharedInstance] loadProductsWithTypesFromAppleServer:products];

Тип может быть: "subs" (подписка), "cons" (потребляемый товар), "noncons" (возобновляемый товар)


v3.7.5🔗

  • Библиотека myTarget обновилась до версии 4.6.0
  • Библиотека myTracker обновилась до версии 1.5.4

v3.7.4🔗

  • Добавили сбор данных от Search Ads
  • Обновление сторонних SDK: Chartboost 6.5.2
  • Обновление сторонних SDK: Flurry 7.8.0 - НУЖНО ОБНОВИТЬ БИБЛИОТЕКУ В ПРОЕКТЕ
  • Обновление сторонних SDK: MyTarget 4.5.11

v3.7.3🔗

  • Исправлена ошибка с инициализацией myTracker

v3.7.2🔗

  • Обновление сторонних SDK: MyTracker 1.5.3

v3.7.1🔗

  • Исправлен баг с нотификациями в ios 8.0

v3.7.0🔗

  • Подняли минимальную версию iOS до 8.0
  • Удалили сторонний SDK: MobileAppTracking
  • Обновление сторонних SDK: Chartboost 6.5.0
  • Обновление сторонних SDK: Flurry 7.6.6
  • Обновление сторонних SDK: GoogleConversionTracking 3.4.0
  • Обновление сторонних SDK: GoogleAnalytics 3.15 (Он сейчас не работает, из-за метода, который называется build. Apple не пропускает в стор)
  • Обновление сторонних SDK: MyTracker 1.5.2
  • Обновление сторонних SDK: MyTarget 4.5.10

v3.6.20🔗

  • Изменено поведение MRGSReachability для поддержки ipv6

v3.6.19🔗

  • Добавили метод pushNotificationDidDelivered в MRGSNoificationManager для трекинга пуш уведомлений. Необходимо вызывать, если пуши реализованы самостоятельно внутри приложения. В качестве ref необходимо передавать id пуша из параметра ref

v3.6.18🔗

  • Полностью отключен Google Analytics, так как у класса GAIDictionaryBuilder, который используется фактически при каждом запросе, вызывается метод build

v3.6.17🔗

  • Убран вызов метода setIsDebug у AppsFlyer. Убран вызов Google Analytics при покупке, так как там есть вызов метода build. Оба этих метода не нравятся Apple с формулировкой вызов private api

v3.6.16🔗

  • Обновился протокол MRGSMyTarget. Добавлен метод handleClick:withController:, который необходимо вызывать при нажатии на баннер рекламы myTarget, если разработчик создает кастомный интерфейс витрины

v3.6.15🔗

  • Обновился протокол MRGSMyTargetDelegate. Теперь метод mrgsMyTarget:didReceiveShowcaseDataAndFoundNotifications имеет сигнатуру mrgsMyTarget:didReceiveShowcaseDataAndFoundNotifications:withAppWallAd и в последнем параметре получает NSArray<MTRGNativeAppwallBanner>*

v3.6.14🔗

  • Логирование в MyTracker о совершенной покупке

v3.6.13🔗

  • Генерация ID сессии и отправка ее на сервер

v3.6.12🔗

  • Включена поддержка BitCode

v3.6.11🔗

  • Правка мелкой ошибки

v3.6.10🔗

  • Исправление креша в платежах при отсутствии локализации

v3.6.9🔗

  • Обновление сторонних SDK: MyTracker 1.4.3
  • Обновление сторонних SDK: MyTarget 4.4.6

v3.6.8🔗

  • Фикс бага с FBSDKCoreKit.framework приводящее к падению на версиях iOS ниже 7.0

v3.6.7🔗

  • Фикс бага с часами

v3.6.6🔗

  • Фикс бага, приводящего в некоторых случаях к падению при инициализации MRGS

v3.6.5🔗

  • Фикс формирования url-а для MyComSupport (в некоторых случаях саппорт мог не открываться)
  • Фикс бага шифровщика буфера MRGS, приводящего в некоторых ситуациях к падениям

v3.6.4🔗

  • Обновление сторонних SDK: MyTracker 1.4.0
  • Обновление сторонних SDK: MyTarget 4.3.1
  • Обновление сторонних SDK: AppsFlyer 4.3.7 Обратите внимание: Фреймворк переименован!

v3.6.3🔗

  • Логирование наличия связи с часами Требуется наличие WatchConnectivity.framework в проекте

v3.6.2🔗

  • Фикс бага шифровщика буфера MRGS, приводящего в некоторых ситуациях к падениям

v3.6.1🔗

  • Фикс бага шифровщика буфера MRGS, приводящего в некоторых ситуациях к падениям

v3.6.0🔗

Необходимо добавить в ваш проект следующий код:

// для версий iOS ниже 9.0
-(BOOL) application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    [MRGServiceInit application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
    return YES;
}

// для версий iOS 9.0 и выше
-(BOOL) application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options {
    [MRGServiceInit application:application openURL:url options:options];
    return YES;
}

v3.5.9🔗

  • Обновление сторонних SDK: MyTracker 1.3.2
  • Обновление сторонних SDK: MyTarget 4.2.7 Требуется наличие MediaPlayer.framework в проекте
  • Обновление сторонних SDK: Chartboost 6.1.1
  • Подняли минимальную версию iOS до 6.0 (было 5.1)

v3.5.8🔗

  • Поддержка Facebook DeepLink. Требуется наличие FBSDKCoreKit.framework в проекте

v3.5.7🔗

  • Обновление сторонних SDK: AppsFlyer 3.3.2

v3.5.6🔗

  • Фикс бага с получением часового пояса пользователя

v3.5.5🔗

  • Фикс бага с получением device token для отправок пуш нотификаций

v3.5.4🔗

  • Фикс бага приводящего в некоторых случаях к падению в банке при попытке восстановить покупку

v3.5.3🔗

  • Обновление сторонних SDK: AppsFlyer 3.3.0
  • Обновление сторонних SDK: Google Analytics 3.13
  • Обновление сторонних SDK: Flurry 7.1.1
  • Обновление сторонних SDK: MyTracker 1.2.0
  • Обновление сторонних SDK: MyTarget 4.1.2

v3.5.2🔗

  • Обновление сторонних SDK: Chartboost SDK 5.4.0

v3.5.1🔗

  • Обновление сторонних SDK: AppsFlyer 2.5.3.15.1

v3.5.0🔗

  • Adman заменен на MyTarget SDK (параметры витрин и баннеров для Adman остаются без изменения и используются в MyTarget)
  • MRGSAdman, MRGSAdmanDelegate и MRGSAdmanParams теперь deprecated, вместо них следует использовать MRGSMyTarget, MRGSMyTargetDelegate и MRGSMyTargetParams
  • Обновление SDK: MyTracker 1.0.20, MyTarget 4.0.6

!!! Библиотека Adman удалена из состава дистрибутива MRGS. Просьба так же удалить ее из тех проектов, которые взаимодействовали с Adman через MRGS. !!!


v3.4.24🔗

  • Добавлена валидация объектов буффера MRGS

v3.4.23🔗

  • Возможность задания пути для хранения буффера данных MRGS в коде приложения
  • Обновление сторонних SDK: AppsFlyer 2.5.3.14

v3.4.22🔗

  • Добавлена возможность отправки токена для push-уведомлений из кода приложения (см. MRGSNotificationManager)
  • Добавлена поддержка трекинга инсталлов из iAd для iOS 7.1 и выше

v3.4.21🔗

  • Оптимизация параметров GET и POST запросов
  • Инициализация GA перенесена в главный поток (в некоторых случаях, инициализация не из главного потока приводила к падениям)
  • Фикс утечки памяти при генерации OpenUDID

v3.4.20🔗

  • Добавлена метрика определения запуска приложения "с нуля" (не включает в себя "Первый запуск")

v3.4.19🔗

  • Добавлен индикатор загрузки на окне MyCom Support при открытии

v3.4.18🔗

  • Обновление SDK: Adman 3.3.3

v3.4.17🔗

  • Обновление SDK: MyTracker 1.0.12, Adman 3.3.2

v3.4.16🔗

  • У класса MRGServiceInit удалены все свойства и методы, которые были помечены как deprecated
  • Фикс отсутствия вызова метода о завершении инициализации у делегата MRGServerDataDelegate

v3.4.15🔗

  • Оптимизация кода инициализации MRGS
  • Обновление SDK: MyTracker 1.0.9

v3.4.14🔗

  • Выключен кэш для баннеров Adman (по просьбе разработчиков Adman)

v3.4.13🔗

  • Оптимизация кода запуска и возврата в приложение

v3.4.12🔗

  • Убраны все обращения к классам CoreLocation.framework при выключенной настройки доступа к локации
  • Выключен кэш для витрин Adman (по просьбе разработчиков Adman)

v3.4.11🔗

  • Добавление методов делегата MRGSAdman на отсутствие рекламных данных для витрины и баннера
  • Обновление SDK: Adman 3.2.20

v3.4.10🔗

  • Фикс проверки наличия опциональных методов делегата для MRGSAdman

v3.4.9🔗

  • Фикс парсинга значений флага enable из MRGService.plist (актуально только для механизма задания параметров через plist)

v3.4.8🔗

  • Фикс бага с заданием параметров локализации окна тех.поддержки.

v3.4.7🔗

  • У делегата MRGSAdman убран параметр hasNotifications при завершении загрузки данных для банеров
  • Инициализация Google Conversion Tracking перенесена в главный поток
  • Обновление SDK: Adman 3.2.19

v3.4.6🔗

  • Добавлены значение по умолчанию для заголовка и кнопки витрины Adman при использовании MRGSAdman
  • На iOS < 6 витрина Adman теперь отображается в нативном режиме (ранее через web)
  • Класс MRGSMoreGames удален (его функционал реализован в MRGSAdman)

v3.4.5🔗

  • Возможность закрытия fullcreen-баннера и витрины Adman через код (класс MRGSAdman)
  • Возможность освобождения занимаемой памяти fullcreen-баннером и витриной Adman через код (класс MRGSAdman)

v3.4.4🔗

  • Обновление SDK: Google Analytics 3.10

ВНИМАНИЕ! Для того, чтобы у Google Analytics была возможность использовать значение idfa при сборе статистики, необходимо в проект добавить libAdIdAccess.a (находится в той же директории, что и libGoogleAnalyticsServices.a).


v3.4.3🔗

  • Обновление SDK: AppsFlyer 2.5.3.11, Flurry 5.4.0

v3.4.2🔗

  • Поддержка fullscreen-баннеров от Adman (класс MRGSAdman)
  • Получение idfa при запрете пользователем трекинга рекламы
  • Фикс инициализации параметров MRGSApplication (в некоторых случаях приводило к падениям)
  • Обновление SDK: Adman 3.2.18

ВНИМАНИЕ! Обратите внимание на изменение параметров Adman в MRGService.plist. Добавлен новый параметр - "fullscreenBannerSlotId". Для получения значений этих параметров следует обратиться к маркетологам.


v3.4.1🔗

  • Фикс бага с очисткой буфера данных MRGS после отправки данных на сервер

v3.4.0🔗

  • Библиотека переведена на ARC
  • Добавлен новый механизм инициализации MRGS без plist-a (см. MRGServiceParams)
  • В Public API возвращен обновленный класс MRGSReachability
  • Добавлен новый класс для работы с уведомлениями - MRGSNotificationManager
  • Удален протокол MRGServiceIniteDelegate
  • Обновление демонстрационного примера
  • Обновление сторонних SDK: MyTracker 1.0.8, Adman 3.2.16

v3.3.0🔗

  • Класс MRGSLock удален из Public API
  • Фикс падений связанных с блокировками потоков (tryLock, applicationWillEnterForeground)
  • Обновление сторонних SDK: Chartboost SDK 5.0.3

v3.2.10🔗

  • Все внешние ссылки в окне My.Com Support теперь открываются в Safari
  • Добавлена возможность закрыть окно My.Com Support из кода
  • Обновление сторонних SDK: MyTracker 1.0.8

v3.2.9🔗

  • Фикс регистрации пуш уведомлений на iOS 8
  • Обновление сторонних SDK: MyTracker 1.0.7

v3.2.6🔗

  • Фикс внутреннего креша -[MRGSReachability currentReachabilityStatus]
  • Класс MRGSReachability перенесен в Private API
  • Удален класс MRGSPastboard

v3.2.5🔗

  • Улучшена стабильность работы на iOS 8

v3.2.4🔗

  • Обновление сторонних SDK: Chartboost SDK 5.0.2, Adman 3.2.11

v3.2.3🔗

  • Фикс отображения окна MyComSupport

v3.2.2🔗

  • Фикс отправки событий во Flurry

v3.2.1🔗

  • Оптимизирован код инициализации MRGS и работы сторонних SDK

v3.2.0🔗

  • Переименован делегат MyComSupportDelegate в MRGSMyComSupportDelegate
  • Отправка статуса "online" на сервер при пустом буфере данных MRGS
  • Обновление SDK: Chartboost SDK 5.0.1

v3.1.8🔗

  • Добавлена возможность работы со службой поддержки My.Com (класс MRGSMyComSupport)

v3.1.7🔗

  • Отслеживание первой покупки в Google Conversion Tracking
  • Обновление SDK: Chartboost 5.0

ВНИМАНИЕ! Обратите внимание на изменение параметров Google Conversion Tracking в MRGService.plist. Добавлен новый параметр - "firstPurchaseLabel". Для получения значений этих параметров следует обратиться к маркетологам.


v3.1.6🔗

  • Перенос всех вызовов Flurry в главный поток
  • Фикс перехвата пуш уведомлений в MRGS при выключенной опции "pushNotifications"

v3.1.5🔗

  • Добавлена возможность отслеживания эффективной регистрации в Google Conversion Tracking
  • Фикс получения OpenUDID в некоторых случаях приводящее к падению приложения

ВНИМАНИЕ! Обратите внимание на изменение параметров Google Conversion Tracking в MRGService.plist. Параметр "label" переименован в "firstRunLabel" и добавлен новый параметр - "effectiveRegLabel". Для получения значений этих параметров следует обратиться к маркетологам.


v3.1.4🔗

  • Уменьшение времени инициализации MRGS на старте
  • Оптимизация отправки данных на сервер

v3.1.3🔗

  • Обновление SDK: Flurry 5.3.0, Chartboost 4.5.1, Google Analytics 3.09, Google Conversion Tracking 3.1.1, AppsFlyer 3.5.3.10

v3.1.2🔗

  • Возможность задания параметров инициализации MRGS и сторонних SDK в коде (ранее - только через MRGService.plist)

v3.1.1🔗

  • Добавлена передача дополнительных параметров в MyTracker
  • Обновление SDK: MyTracker 1.0.6

v3.1.0🔗

  • Добавлена поддержка MyTracker
  • Удалена поддержка AdmanTracker
  • Удален класс MRGSLogservice (ранее отмеченный как deprecated)
  • Возможность отметить приложение как "обновленное"
  • Обновление SDK: Adman 3.2.10

ВНИМАНИЕ! Функционал AdmanTracker теперь реализуется через MyTracker. Идентификаторы приложений остаются прежними.


v3.0.30🔗

  • Корректная отправка advertisingIdentifier при старте

v3.0.26🔗

  • Обновление сторонних SDK: Chartboost 4.5.1, Flurry 5.2.0, GoogleAnalytics 3.08, AppsFlyer 2.5.3.9

v3.0.23🔗

  • Исправлен баг с отсутствием вызова callback-a при завершении инициализации MRGS

v3.0.22🔗

  • Обновление сторонних сервисов: Adman 3.2.9

v3.0.21🔗

  • Фикс бага загрузки новых данных для Adman при еще необработанных старых (для использования adman версии 3.2.7 и ниже)
  • Добавлен заголовочный файл с версией
  • Обновление сторонних сервисов: Adman 3.2.8

v3.0.19🔗

  • Обновление сторонних сервисов: Adman 3.2.4

v3.0.18🔗

  • Обновление сторонних сервисов: Adman 3.2.2

v3.0.14🔗

  • Обновление сторонних сервисов: Flurry 5.0.0

v3.0.13🔗

  • Уменьшение размера дистрибутива для AIR
  • Добавлена поддержка Adman версии 3.2.1
  • Обновление сторонних сервисов: Adman 3.2.1, Chartboost 4.2

v3.0.12🔗

  • Отправка сторонним сервисам только проверенных сервером MRGS платежей (ранее в статистику попадали читерские платежи)
  • Новая метрика: Отмена платежа (пользователем)

v3.0.10🔗

  • Добавлена возможность определения версии в коде через константу kMRGServiceVersion
  • У MRGSMoreGames добавлен метод для закрытия витрины -(void)close;
  • Фикс бага с обновление рекламных баннеров при открытой витрине

v3.0.6🔗

  • У MRGSMoreGamesDelegate добавлен метод, который информирует о начале загрузке данных для витрины
  • Фикс бага с неверным значением флага 'ready' у MRGSMoreGames

v3.0.5🔗

  • Убраны warning-и о дублирующихся именах методов
  • Обновление сторонних библиотек в дистрибутиве: AdMan 3.1.3, Flurry 4.3.0

v3.0.4🔗

  • Новый класс MRGSSocial Предназначен для отправки в MRGS социальных данных о пользователе

v3.0.3🔗

  • Добавлена поддержка нового API AppsFlyer (2.5.3.x)
  • Обновление внешних библиотек: AppsFlyer (2.5.3.7), AdMan (3.1.2)

v3.0.2🔗

  • Добавлена поддержка AdMan 3.1
  • Добавлена поддержка Google Analytics 3.03c
  • Добавлена поддержка архитектуры x86_64
  • Добавлена проверка корректной линковки сторонних библиотек (в случае если они включены в plist)
  • Фикс бага взаимодействия MRGS и AdMan при раздельной инициализации и загрузке AdMan-a
  • Фикс бага при формировании crash report-a в Google Analytics


Последнее обновление: 2025-04-14
Дата создания: 2020-03-02