Skip to content

Migration guide🔗

This document contains instructions for updating MRGS SDK, in the case when you need to make any changes to the code or project settings.

4.x.x → 6.0.0🔗

MRGSAuthentication🔗

  • Class MRGSAuthenticationVKontakte moved to his own MRGSAuthenticationVK module.
  • Class MRGSAuthenticationGoogleGames renamed in to MRGSAuthenticationGoogleSignIn and moved to his own MRGSAuthenticationGoogleSignIn module.

  • Enum MRGSAuthenticationNetwork removed.

  • Enum MRGSAuthenticationNetwork#Unknown removed.
  • Enum MRGSAuthenticationNetwork#Amazon removed. Use MRGSAuthenticationAmazon#SocialID instead.
  • Enum MRGSAuthenticationNetwork#AppleGameCenter removed. Use MRGSAuthenticationAppleGameCenter#SocialID instead.
  • Enum MRGSAuthenticationNetwork#Facebook removed. Use MRGSAuthenticationFacebook#SocialID instead.
  • Enum MRGSAuthenticationNetwork#GoogleGames removed. Use MRGSAuthenticationGoogleSignIn#SocialID instead.
  • Enum MRGSAuthenticationNetwork#MyGames removed. Use MRGSAuthenticationMyGames#SocialID instead.
  • Enum MRGSAuthenticationNetwork#Plarium removed. Use MRGSAuthenticationPlarium#SocialID instead.
  • Enum MRGSAuthenticationNetwork#SignInWithApple removed. Use MRGSAuthenticationSignInWithApple#SocialID instead.
  • Enum MRGSAuthenticationNetwork#VKontakte removed. Use MRGSAuthenticationVKontakte#SocialID instead.
  • Enum MRGSAuthenticationNetwork#VKId removed. Use MRGSAuthenticationVKId#SocialID instead.

  • Enum MRGSAuthenticationScope removed.

  • Enum MRGSAuthenticationScope#AmazonPostalCode removed. Use MRGSAuthenticationAmazon.Scopes#PostalCode instead.
  • Enum MRGSAuthenticationScope#AmazonProfile removed. Use MRGSAuthenticationAmazon.Scopes#Profile instead.

  • Enum MRGSAuthenticationScope#FacebookBirthday removed. Use MRGSAuthenticationFacebook.Scopes#UserBirthday instead.

  • Enum MRGSAuthenticationScope#FacebookEmail removed. Use MRGSAuthenticationFacebook.Scopes#Email instead.
  • Enum MRGSAuthenticationScope#FacebookFriends removed. Use MRGSAuthenticationFacebook.Scopes#UserFriends instead.
  • Enum MRGSAuthenticationScope#FacebookGender removed. Use MRGSAuthenticationFacebook.Scopes#UserGender instead.
  • Enum MRGSAuthenticationScope#FacebookHometown removed. Use MRGSAuthenticationFacebook.Scopes#UserHometown instead.
  • Enum MRGSAuthenticationScope#FacebookLocation removed. Use MRGSAuthenticationFacebook.Scopes#UserLocation instead.

  • Enum MRGSAuthenticationScope#SignInWithAppleEmail removed. Use MRGSAuthenticationSignInWithApple.Scopes#Email instead.

  • Enum MRGSAuthenticationScope#SignInWithAppleFullName removed. Use MRGSAuthenticationSignInWithApple.Scopes#FullName instead.

  • Enum MRGSAuthenticationScope#VKontakteEmail removed. Use MRGSAuthenticationVKontakte.Scopes#Email instead.

  • Enum MRGSAuthenticationScope#VKontakteFriends removed. Use MRGSAuthenticationVKontakte.Scopes#Friends instead.
  • Enum MRGSAuthenticationScope#VKontakteGroups removed. Use MRGSAuthenticationVKontakte.Scopes#Groups instead.
  • Enum MRGSAuthenticationScope#VKontakteMessages removed. Use MRGSAuthenticationVKontakte.Scopes#Messages instead.
  • Enum MRGSAuthenticationScope#VKontakteNotifications removed. Use MRGSAuthenticationVKontakte.Scopes#Notifications instead.
  • Enum MRGSAuthenticationScope#VKontaktePhotos removed. Use MRGSAuthenticationVKontakte.Scopes#Photos instead.
  • Enum MRGSAuthenticationScope#VKontakteStatus removed. Use MRGSAuthenticationVKontakte.Scopes#Status instead.
  • Enum MRGSAuthenticationScope#VKontakteWall removed. Use MRGSAuthenticationVKontakte.Scopes#Wall instead.

  • Property MRGSAuthenticationAchievement#SocialId now returns string instead MRGSAuthenticationNetwork.

  • Property MRGSAuthenticationLeaderboard#SocialId now returns string instead MRGSAuthenticationNetwork.
  • Property MRGSAuthenticationLeaderboardScore#SocialId now returns string instead MRGSAuthenticationNetwork.
  • Property MRGSAuthenticationInvite#SocialId now returns string instead MRGSAuthenticationNetwork.
  • Property MRGSAuthenticationPost#SocialId now returns string instead MRGSAuthenticationNetwork.

  • Property MRGSAuthenticationAccessToken#AuthorizedScopes now returns List<string> instead List<MRGSAuthenticationScope>.

  • Property MRGSAuthenticationAccessToken#SocialId now returns string instead MRGSAuthenticationNetwork.

  • Property MRGSAuthenticationCredential#SocialId now returns string instead MRGSAuthenticationNetwork.

  • Property MRGSAuthenticationUser#SocialId now returns string instead MRGSAuthenticationNetwork.

  • Method MRGSAuthenticationPost#HasPermissions now requires List<string> instead List<MRGSAuthenticationScope>.

  • Method MRGSAuthentication#Login(List<MRGSAuthenticationScope>, Action<MRGSAuthenticationCredential, MRGSError>) changed on MRGSAuthentication#Login(List<string>, Action<MRGSAuthenticationCredential, MRGSError>).
  • Method MRGSAuthentication#SocialId() now returns string instead MRGSAuthenticationNetwork.

MRGService🔗

  • MRGSMyTracker was moved to his own MRGSMyTracker module and no more provides by MRGService modules.

  • Class MRGSMyTrackerParams moved into MRGSMyTracker module.

  • Class MRGSVKontakteParams moved into MRGSAuthenticationVK module.
  • Class MRGSVKIdParams moved into MRGSAuthenticationVKId module.

  • Enum BankSubstitution removed. Use MRGSMyGamesBank#UseAsMainBank() and MRGSVKPay#UseAsMainBank() instead.

  • Property MRGSMyGamesParams#VKPlayMode removed. Use MRGSMyGamesParams#CustomHost instead.

  • Added a new method for initialization MRGService#Initialize(MRGServiceParams, IEnumerable<MRGSExternalSDKSettings>, IMRGSServerDataDelegate).

    var serviceParams = new MRGServiceParams("xxxxxx", "xxxxxx");
    
    var trackerParams = new MRGSMyTrackerParams("xxxxxx")
    {
        Debug = true,
        ForwardMetrics = true,
        TrackingLocationEnabled = true
    };
    var vkParams = new MRGSVKontakteParams("xxxxxxx");
    var vkIdParams = new MRGSVKIdParams("xxxxx", "xxxxxxxxxxx")
    {
        Debug = true
    };
    MRGSExternalSDKSettings[] additionalParams = { trackerParams, vkParams, vkIdParams };
    
    MRGService.Instance.Initialize(serviceParams, sdkParams, additionalParams, this);
    

MRGSSupport🔗

  • Enum MRGSMyGamesSupportCredential.SocialNetwork#Vkontakte removed.

3.x.x → 4.0.0🔗

MRGSAdvertising🔗

  • Changed delegate MRGSAdvertising.MRGSAdvertisingLoadDelegate:

        MRGSAdvertising.MRGSAdvertisingLoadDelegate -> MRGSAdvertising.ILoadDelegate 
        onAdvertisingLoaded -> OnAdvertisingLoaded
        onAdvertisingLoadingError -> OnAdvertisingLoadingError
    
  • Changed delegate MRGSAdvertising.MRGSAdvertisingShowDelegate:

        MRGSAdvertising.MRGSAdvertisingShowDelegate -> MRGSAdvertising.IShowDelegate
        onAdvertisingFinished(bool skipped) -> OnAdvertisingFinished(bool skipped)
    
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.

  • The private part is hidden, the file structure has been changed.

MRGSAnalytics🔗

  • Changed delegate MRGSAppsFlyerDelegate:

        MRGSAppsFlyerDelegate -> IMRGSAppsFlyerDelegate
        onConversionDataSuccess -> OnConversionDataSuccess
        onAppOpenAttribution -> OnAppOpenAttribution
    
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.

  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSAppsFlyer.getInstance().method() -> MRGSAppsFlyer.Instance.Method()
    

MRGSAuthentication🔗

  • All .Instance (getInstance()) methods of social classes of socials now returns interface:

    MRGSAuthenticationAmazon.Instance returns IMRGSAuthenticationAmazon
    MRGSAuthenticationAppleGameCenter.Instance returns IMRGSAuthenticationAppleGameCenter
    MRGSAuthenticationFacebook.Instance returns IMRGSAuthenticationFacebook
    MRGSAuthenticationGoogleGames.Instance returns IMRGSAuthenticationGoogleGames
    MRGSAuthenticationMyGames.Instance returns IMRGSAuthenticationMyGames
    MRGSAuthenticationPlarium.Instance returns IMRGSAuthenticationPlarium
    MRGSAuthenticationSignInWithApple.Instance returns IMRGSAuthenticationSignInWithApple
    MRGSAuthenticationVKontakte.Instance returns IMRGSAuthenticationVKontakte
    
  • Changed some values MRGSAuthenticationScope:

    SIWAFullName -> SignInWithAppleFullName
    SIWAEmail -> SignInWithAppleEmail
    
  • Changed enum MRGSAuthenticationAchievementState -> MRGSAuthenticationAchievement.State

  • Changed delegate IMRGSAuthenticationDelegate: onAuthenticationProviderDidLogoutUser -> OnAuthenticationProviderDidLogoutUser
  • Added error codes and domains: MRGSAuthenticationErrorCode and MRGSAuthenticationErrorDomain
  • RemovedObsolete methods and classes
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSAuthenticationAmazon.getInstance().method() -> MRGSAuthenticationAmazon.Instance.Method()
    MRGSAuthenticationAppleGameCenter.getInstance().method() -> MRGSAuthenticationAppleGameCenter.Instance.Method()
    MRGSAuthenticationFacebook.getInstance().method() -> MRGSAuthenticationFacebook.Instance.Method()
    MRGSAuthenticationGoogleGames.getInstance().method() -> MRGSAuthenticationGoogleGames.Instance.Method()
    MRGSAuthenticationMyGames.getInstance().method() -> MRGSAuthenticationMyGames.Instance.Method()
    MRGSAuthenticationPlarium.getInstance().method() -> MRGSAuthenticationPlarium.Instance.Method()
    MRGSAuthenticationSignInWithApple.getInstance().method() -> MRGSAuthenticationSignInWithApple.Instance.Method()
    MRGSAuthenticationVKontakte.getInstance().method() -> MRGSAuthenticationVKontakte.Instance.Method()
    

MRGSBank🔗

  • Class MRGSBankProductsResponce renamed to MRGSBankProductsResponse
  • Interface MRGSBankDelegateEx and property MRGSBank.getInstance#DelegateExtended marked as Obsolete, use IMRGSBankDelegate and MRGSBank.Instance.Delegate instead:

    MRGSBankDelegateEx -> IMRGSBankDelegate
    MRGSBank.getInstance.DelegateExtended -> MRGSBank.Instance.Delegate
    onReceiveProductsResponce -> OnReceiveProductsResponse
    onReceiveProductsError -> OnReceiveProductsError
    onReceiveSucessfullPurchase -> OnReceiveSuccessfulPurchase
    onReceiveFailedPurchase -> OnReceiveFailedPurchase
    onReceivePendingPurchase -> OnReceivePendingPurchase
    onReceiveCancelledPurchase -> OnReceiveCancelledPurchase
    onTransactionsRestoreCompleted -> OnTransactionsRestoreCompleted
    
  • Changed enum MRGSSubscriptionPeriod.MRGSSubscriptionPeriodUnit -> MRGSSubscriptionPeriod.PeriodUnit:

    kMRGSSubscriptionPeriodUnitDay -> Day
    kMRGSSubscriptionPeriodUnitWeek -> Week
    kMRGSSubscriptionPeriodUnitMonth -> Month
    kMRGSSubscriptionPeriodUnitYear -> Year
    
  • Changed enum MRGSBankProductDiscount.MRGSDiscountPaymentMode -> MRGSBankProductDiscount.DiscountPaymentMode:

    kMRGSBankProductDiscountPaymentModeFreeTrial -> FreeTrial
    kMRGSBankProductDiscountPaymentModePayAsYouGo -> PayAsYouGo
    kMRGSBankProductDiscountPaymentModePayUpFront -> PayUpFront
    
  • Changed enum MRGSBankProductDiscount.MRGSDiscountType -> MRGSBankProductDiscount.DiscountType:

    kMRGSDiscountTypeSubscription -> Subscription
    kMRGSDiscountTypeIntroductory -> Introductory
    
  • RemovedObsolete methods and classes

  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSBank.getInstance().method() -> MRGSBank.Instance.Method()
    MRGSMyGamesBank.getInstance().method() -> MRGSMyGamesBank.Instance.Method()
    MRGSBankReceiptProcessor.getInstance().method() -> MRGSBankReceiptProcessor.Instance.Method()
    

MRGService🔗

  • Class MRGSFlurryParams removed.
  • Class MRGSChartboostParams removed.
  • Class MRGSGoogleConversionTrackingParams removed.
  • Interface MRGSServerDataDelegate renamed to IMRGSServerDataDelegate
  • Property MRGSExtraOptionsiOS#MRGSNotificationCenterSupported removed
  • Property MRGSExternalSDKParams#FlurryParams removed
  • Property MRGSExternalSDKParams#ChartboostParams removed
  • Property MRGSExternalSDKParams#GoogleConversionTrackingParams removed
  • Method MRGSLog#addPaymentLog(string) removed.
  • The integration check now returns an MRGSIntegrationCheckResult.
  • Added some async/await methods for MRGSDevice:

    GetGeoIpInfoAsync
    GetOpenUDIDAsync
    GetIdentifierForAdvertisingAsync
    GetIdentifierForVendorAsync
    
  • Added .Throwable() extension for async/await methods:

    await MRGSDevice.Instance.GetGeoIpInfoAsync().Throwable().Country == "RU"
    
  • RemovedObsolete methods and classes

  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGService.getInstance().method() -> MRGService.Instance.Method()
    MRGSDevice.getInstance().method() -> MRGSDevice.Instance.Method()
    MRGSLog.getInstance().method() -> MRGSLog.Instance.Method()
    MRGSMetrics.getInstance().method() -> MRGSMetrics.Instance.Method()
    MRGSMyTracker.getInstance().method() -> MRGSMyTracker.Instance.Method()
    MRGSUsers.getInstance().method() -> MRGSUsers.Instance.Method()
    
  • Now, for the new initialization of MRGService#Initialize for Android, it requires to set MRGSPlatform which similar to the platform from MRGS console of your project.

    var serviceParams = new MRGServiceParams(appId: APP_ID, appSecret: APP_SECRET);
    // Available MRGSPlatform: Amazon, Android, Huawei, Samsung, and FacebookCloud
    serviceParams.AndroidExtraOptions.Platform = MRGSPlatformAndroid.Android;
    MRGService.Instance.Initialize(serviceParams, sdkParams, this)
    

MRGSFirebase🔗

  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSFirebase.getInstance().method() -> MRGSFirebase.Instance.Method()
    

MRGSGameCenter🔗

  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Interface MRGSGameCenterClientDelegate removed. Use IMRGSGameCenterClientDelegate instead.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSGameCenter.getInstance().method() -> MRGSGameCenter.Instance.Method()
    

MRGSGDPR🔗

  • Interface MRGSCOPPA.IMRGSCOPPADelegate renamed to MRGSCOPPA.IShowDelegate
  • Interface MRGSCOPPA.IMRGSGDPRDelegate renamed to MRGSCOPPA.IShowDelegate
  • RemovedObsolete methods and classes
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Enum MRGSCCPAUserPreference.MRGSCCPAUserPreferenceShare renamed to MRGSCCPAUserPreference.Share
  • Enum MRGSCCPAUserPreference.MRGSCCPAUserPreferenceNotSharing renamed to MRGSCCPAUserPreference.NotSharing
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSGDPR.getInstance().method() -> MRGSGDPR.Instance.Method()
    MRGSCOPPA.getInstance().method() -> MRGSCOPPA.Instance.Method()
    

MRGSNotifications🔗

  • Property MRGServiceParams#MRGSNotificationCenterSupported removed
  • Property MRGServiceParams#DefferedMRGSNotificationCenterStartrenamed to MRGServiceParams#DeferredMRGSNotificationCenterStart
  • Changed enum LockScreenVisibility:

    VISIBILITY_PUBLIC -> Public
    VISIBILITY_PRIVATE -> Private
    VISIBILITY_SECRET -> Secret
    VISIBILITY_NO_OVERRIDE -> NoOverride
    
  • Changed enum MRGSNotificationTriggerType -> MRGSNotificationTrigger.Type:

    kMRGSTimeIntervalTrigger -> TimeInterval
    kMRGSDateComponentsTrigger -> DateComponents
    kMRGSLocationTrigger -> Location
    kMRGSRemoteTrigger -> Remote
    
  • RemovedObsolete methods and classes

  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSNotificationCenter.getInstance().method() -> MRGSNotificationCenter.Instance.Method()
    

MRGSRecommendations🔗

  • RemovedObsolete methods and classes
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSRecommendations.getInstance().method() -> MRGSRecommendations.Instance.Method()
    

MRGSShowcase🔗

  • Method of IMRGSShowcaseDelegate#didReceiveNewShowcaseContent(int) interface renamed to IMRGSShowcaseDelegate#OnReceiveNewShowcaseContent(int)
  • All methods starting with a lowercase letter and not corresponding to "naming conventions" are marked as Obsolete and similar capitalized ones corresponding to conventions were added.
  • The private part is hidden, the file structure has been changed.
  • Changed access to singleton - getInstance method moved to property Instance:

    MRGSShowcase.getInstance().method() -> MRGSShowcase.Instance.Method()
    

2.0.x - 2.1.0🔗

The main change - MRGService Android now depends on the androidx series libraries, instead of support-library.

MRGSUnityLegacy🔗

If you are using the Legacy version of the plugin, edit the mainTemplate.gradle file.

Remove old dependencies such as:

'com.my.tracker:mytracker-sdk:1.5.8'
'com.google.android.gms:play-services-ads-identifier:16.0.0'
'com.android.support:support-v4:28.0.0'
'com.android.support:recyclerview-v7:28.0.0'
'com.android.support:appcompat-v7:28.0.0'
'com.android.support:support-vector-drawable:28.0.0'
'com.android.support:multidex:1.0.3'
'com.google.firebase:firebase-core:16.0.9'
'com.google.firebase:firebase-messaging:18.0.0'

Add new ones:

'com.my.tracker:mytracker-sdk:1.5.12'
'androidx.appcompat:appcompat:1.1.0'
'androidx.localbroadcastmanager:localbroadcastmanager:1.0.0'
'androidx.recyclerview:recyclerview:1.0.0'
'androidx.vectordrawable:vectordrawable:1.1.0'
'androidx.multidex:multidex:2.0.0'
'com.google.firebase:firebase-analytics:17.2.1'
'com.google.firebase:firebase-messaging:20.0.0'

You also need to replace in mainTemplate.gradle classpath 'com.android.tools.build:gradle:3.2.0' with classpath 'com.android.tools.build:gradle:3.4.0'.

MRGSUnity and MRGSBaseUnity🔗

If you use MRGService Unity with the Google Play Services Resolver support, then the dependencies will be updated automatically. To make sure, you can delete all aar and jar files from the Assets/Plugins/Android directory and call Assets -> Play Services Resolver -> Android -> Force Resolve.

1.0.49 - 2.0.0🔗

In version 2.0.0, the MRGS plugin was split into modules (separate unitypackages), which are responsible for the individual MRGS components. To avoid problems, when upgrading from 1.0.Ñ… to 2.0.0 we recommend that you download the version without modules (MRGServiceUnityLegacy.zip archive).

If you decided to upgrade to the version with modules, you can import all of the .unitypackage files from the MRGServiceUnity.zip archive This build includes the Google Play Services Resolver. You need to either disable it or remove old dependencies. To do this, edit the mainTemplate.gradle file and remove the following dependencies from the dependencies section:

compile 'com.my.tracker:mytracker-sdk:1.5.8'
compile 'com.google.android.gms:play-services-ads-identifier:16.0.0'
compile 'com.android.billingclient:billing:2.0.3'
compile 'com.android.support:support-v4:28.0.0'
compile 'com.android.support:recyclerview-v7:28.0.0'
compile 'com.android.support:appcompat-v7:28.0.0'
compile 'com.android.support:support-vector-drawable:28.0.0'

compile 'com.google.firebase:firebase-core:16.0.9'
compile 'com.google.firebase:firebase-messaging:18.0.0'

If you have the MRGServiceResources.bundle file in the Assets/Plugins/MRGS/iOS/Frameworks/ directory, you need to delete it.

1.0.48 - 1.0.49🔗

In version 1.0.49, there was a big change in the Android MRGS library. It was updated to version 4.0 and is now a set of 9 aar files:

MRGSAdvertising.aar
MRGSAnalytics.aar
MRGSBilling.aar
MRGSGDPR.aar
MRGSGameCenter.aar
MRGSNotifications.aar
MRGSSupport.aar
MRGService.aar
  1. Before importing a new version of the MRGSUnity.unitypackage, delete the old aar files in the Assets/Plugins/MRGS/Android directory
MRGService.aar
MRGServiceDependencies.aar
MRGServicePlayCenter.aar // If there is one
  1. After importing all the files, pay attention to the mainTemplate.gradle template.

  2. Dependencies removed:

'com.google.android.gms:play-services-analytics:16.0.3'
'com.google.android.gms:play-services-gcm:15.0.1'
  • Dependencies updated:
'com.android.support:multidex:1.0.1' -> 'com.android.support:multidex:1.0.3'
'com.android.support:support-v4:27.1.1' -> 'com.android.support:support-v4:28.0.0'
'com.android.support:appcompat-v7:27.1.1' -> 'com.android.support:appcompat-v7:28.0.0'
'com.android.support:recyclerview-v7:27.1.1' -> 'com.android.support:recyclerview-v7:28.0.0'
'com.google.firebase:firebase-core:16.0.3' -> 'com.google.firebase:firebase-core:16.0.9'
'com.google.firebase:firebase-messaging:17.3.0' -> 'com.google.firebase:firebase-messaging:18.0.0'
  • Dependencies added:
'com.google.android.gms:play-services-ads-identifier:16.0.0'
'com.android.support:support-vector-drawable:28.0.0'
  1. If you use Samsung Billing

  2. It is necessary to specify the type of assembly (mode) "test" or "production" in the <SamsungBilling> section:

<SamsungBilling
    enable="true"
    mode="production"
/>
  • In the archive with the MRGS library, in the Extra directory, there is the IAP5Helper.aar that you need to add to your project.

Last update: 2023-02-03
Created: 2020-01-16