Releases
Releases 4.4:
4.4.9
What changed
- Changed Purchaser service visibililty level to public.
4.4.8
What changed
- Added
SkipClientIdFromCloudLoading
andClientIdFromCloudLoadingTimeout
configuration options to provide control of loading ofClientId
from native cloud storage; - Fixed 'missing reference error' when only Max mediator define symbols were added for Magify Service.
4.4.7
What changed
- Fixed errors with access to native Android API;
- Fixed editor error with fake cloud storage.
4.4.6
What changed
- Fixed
NullReferenceException
when returned value ofMagifyEditorMoq.RegisteredLtoOffers()
is null; - Added
MagifyServerTimeProvider
for getting server time from Magify Server.WorldTimeApiServerTimeProvider
was deleted; - Fixed an infinitive loop when ATT status passed right on initialization;
- Fixed a situation when the Android build number (version code) requested from the thread pull returned '0';
- Clarified error logs during sync state process.
4.4.5
What changed
- Improved handling of errors of writing to storage on disk;
- Fixed infinitive loop on SDK termination if there was token loading;
- Added handling of the "Additional text encountered after finished reading JSON content" exception during migration from old android SDK;
- Optimized SDK's initialization;
- Fixed a vulnerability that may prevent migration from old native SDK from happening;
- Improved OnConfigLoaded callback to allow requesting a campaign from its subscribers;
- Added thread safety and check for storing and deleting caches for CacheContent;
- Adapted some code for old code analyzer for Unity 2021;
- Added
HasSocialAuthorize
flag to check is socialprovider
andtoken
have been passed; - Handled argument null exception (
_unity_self
) during web request's aborting.
4.4.4
What changed
- Added
AutoRestoreStateInfo
property. It provides access to the info about automatic state restoring; - Added
IsAutoRestoreStateEnabled
property. It allows you to control automatic state restoring; - Added opportunity to fake
AndroidId
on initialization (MAGIFY_VERBOSE_LOGGING
required).
4.4.3
What changed
- Added
ResetUserAuthorization
method. It allows to reset previously set social authorization provider and token.
4.4.2
What changed
- Fixed infinitive loop if web-request was cancelled on first start.
4.4.1
What changed
- Fixed context and auth token requests cancellation handling.
4.4.0
What changed
- Added the ability to create a single bundle with all included languages instead of a bundle for each language;
- Added
storefront
field, that represents store country for InApp and Subscriptions analytics; - Added
original_app_version
field for some analytics models to show the version on which the event was generated. The goal was to have two filters and dimenschne by app version in the reports. The first with information about the app version on which the event was sent to the server, the second with information about the app version that the user had at the time of the event track. Works out of the box, you don't have to do anything, list of models:AdsClick
;AdsImpression
;AppLaunch
;ApplovinAdsImpression
;Bonuses
;Click
;EventFail
;Impression
;ImpressionFail
;InApps
;InvalidNativeElement
;LevelPlayAdsImpression
;MailingListStatusesMapping
;PaidSubscriptionActivation
;SessionEvent
;StartEndSession
;Transaction
;TrialActivation
;
- Added
TrackCorrectionTransaction
API for the appropriate transaction type. In the "Transaction" analytics model, thetransaction_type
field can now also containspend_correction
.
Releases 4.3:
4.3.1
What changed
- Added stored app features;
- Update analytics events with
product_id
andproduct_id_creative
; - Added segmentation by build number.
Releases 4.2:
4.2.2
What changed
- Added switching of analytics sync timer on main thread;
- Update analytics events with
product_id
andproduct_id_creative
; - Making a copy of
params
argument for campaign impression event; - Added flag to replace campaign type representation from int to string;
- Improved security of sending events process;
- Reset AuthToken on environment tweak.
4.2.1
What changed
- Added basic xml-documentation for Save & Restore progress functionality.
4.2.0
What changed
- Added functionality of saving and restoring the user (
ClientId
) and his game progress. It is possible to restore automatically at the first startup after installing the application, as well as manually, controlled by you. There is a functionality of automatic user recovery (on Android works within one device, on iOS within one device or one apple-account); - Added the ability to query the current Magify config by scopes (i.e. query individual parts as needed). Works in additive mode, i.e. requested scopes will overwrite previously downloaded data only by the corresponding fields;
- Added processing of new sections of the config: AB-tests and Segmentations. These sections provide information about which ab-tests and segments a player has gotten into. They are loaded only if the corresponding config scopes are explicitly specified;
- TrackInstalls-event has been removed;
- MagifyEditorMoq for
ActiveLtoOffers()
andRegisteredLtoOffers()
methods returns null by default.
Releases 4.1:
4.1.2
What changed
- Now there are 2 working modes of Magify: Default & Advanced:
- Default mode supports only collecting and sending analytics;
- Advanced mode supports all the functionality of Magify (add
MAGIFY_ADVANCED
define symols to your project);
- Added UseAdvancedVersion flag to
MagifyConfig
for enabling Advanced version of Magify; - Added active purchases verification;
- Added
IsAttAuthorized
flag toMagifyConfig
; - Added originalTransactionId for purchasing-related analytics models;
- Supported multithreading in EventHandler. Handled UnityWebRequests exceptions;
- Added retry for savng BinaryStorage on disk;
- Added retry for loading BinaryStorage from disk;
- Handled failed to access GPS ad id exception;
- Reduced amount of LogError in Unity editor;
- Internal optimizations and bug-fixes.
Releases 4.0:
4.0.24
What changed
- Added setting of
SubscriptionStatus
andAuthorizationStatus
before first AppLaunch (cause iOS doesn't migrate them).
4.0.23
What changed
- Added switching of analytics sync timer on main thread;
- Update analytics events with
product_id
andproduct_id_creative
; - Making a copy of
params
argument for campaign impression event; - Added flag to replace campaign type representation from int to string;
- Improved security of sending events process;
- Reset AuthToken on environment tweak.
4.0.21
What changed
- Fixed some bugs with
EditorDevice
woring; - Added ability to moq the list of registered and active offerers via EditorMoq. Also, if developer mode is enabled, any calls to Magify client will be scipped;
- Fixed working with time in daily counters;
- Imroved catching of exceptions during migration from old (before 4.0.0) sdk versions;
- Improved working with internal storages;
- Supported multithreading for analytics events, that improves quality of analytics at critical moment;
- Handled exceptions with native android libraries.
4.0.15
What changed
- Added support of all platforms for magify C# assembly. It's required by bundle creator for editor-builds.
4.0.14
What changed
- Improved support of High code stripping for some Sdk models;
- Improved server interactions (operation cancellations, logs, threading);
- Fixed timestamp format in analytics events;
- Some fixes of working in Unity editor;
- Added public Api to
FirstInstalledVersion
property; - Added TrackRestoredSubscription method;
- Improved migration from old versions logic;
- Added
ClearNativeStorage()
method. Clears Magify keychains on iOS (nothing on android for now); - Replaced timeout for textures/bundles loading with
DownloadPromise
and multiple handles to it for differentLoad()
calls; - Fix choice parameter of event parsing (handled JArray value);
- Fixed tweak user locale method, restored
ResetAndForceUpdate()
.
4.0.0
What changed
- Internal SDK has been completely rewritten in c# without changed in functional logic;
- Added "Magify Service" as separate package without any changes to core manager;
- Added full support of Magify Runtime in the Unity Editor;
- Added
Environment.Offline
to block all server interactions (recommended for use only in Editor); - Added
MagifyLogger
withLoggingScope
to manage logs; - Added
AdPreloader
as part ofMagifyService
to preload (cache) ads; - Improved subscription status refreshing;
- Added more detailed
PurchaseReceiptModel
toPurchaseInfo
; - Added CrossPromoProduct and
CrossPromoProductObtainer
; - Almost all of exceptions converted to inheritors of
MagifyException
; - Added 'test suite' support for
LevelPlayMediator
; - Improved ads revenue tracking.