Known Issues

1. Cocoapods Version Issues

You may have an issue downloading certain dependencies if you do not have the correct version of Cocoapods on your computer.

To address this, we have created a simple script to help you configure Cocoapods correctly. Simply copy paste it into your terminal and run it to upgrade your Cocoapods to a MAS-compatible version.

/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/nicky9112/0bf903795f77c5052ff12c92e629f975/raw/a8783d03c96b8d1d50f92977bfa0112711fbc57a/install-cocoapods.sh)"

2. FBCoreKit Conflicts

If you are using a Facebook related SDK and have a FBCoreKit conflict, you may resolve it by following these steps:

  • Enter Assets/Yodo1/MAS/Editor/Dependencies directory and open the Yodo1MasiOSDependencies.xml file
  • Remove or comment <iosPod name="FBSDKCoreKit" version="~> 6.5.2" bitcode="false" minTargetSdk="9.0" />

3. Remove user_frameworks!

Do not check ‘Add use_frameworks!’ and ‘Always add the main target to Podfile’.

However, if you use the Facebook sharing function or login function, please check ‘Add use_frameworks!’ and ‘Always add the main target to Podfile’.

4. Firebase Compatibility

If you are using Firebase, please upgrade to Firebase 7.0.0 or above. Lower versions are not compatible with AdMob. Since MAS uses the latest version of the Admob SDK, which requires a matching version of Firebase.


If you cannot upgrade to Firebase 7.0.0 or above, please follow these steps after adding the MAS SDK to your game:

  • Open the mainTemplate.gradle file in the directory Assets/Plugins/Android
  • Change specified content, {MAS_SDK_VERSION} is the SDK version of MAS, e.g. 4.0.0.3

Before

implementation 'com.yodo1.mas:google:{MAS_SDK_VERSION}'

After

implementation('com.yodo1.mas:google:{MAS_SDK_VERSION}') {

        exclude group: 'com.google.android.gms', module: 'play-services-measurement'
        exclude group: 'com.google.android.gms', module: 'play-services-measurement-sdk-api'
	}

5. Xcode Workspace

When building your project with Xcode, open the Xcode workspace file instead of the Xcode project file:

open App.xcworkspace

6. Checking If MAS Is In Your APK

5.1. In the presence of MAS, your Unity project will have the following structure:

5.2. Check Unity integration mode

5.2.1)If you’re using gradle, you will find this reference – 'com.yodo1.mas:standard:versioncode' or 'com.yodo1.mas:google:versioncode' in the file at the end of .gradle in the Assets/Plugins/Android folder.

5.2.2)If you’re using Android Resolver you will find this file – com.yodo1.mas:standard:version.aar or com.yodo1.mas:google:version.aar in the Assets/Plugins/Android folder.

5.3. In the presence of MAS, your APK will have the package com.yodo1.advert in one of the .dex files, appearing with the following structure:

Drag apk file to AndroidStudio, or you can follow this guide Analyze your build with APK Analyzer

5.4. You will find the MAS initialization log console:

7. Duplicate Code Errors

Often, you will encounter duplicate code errors, wherein MAS appears to conflict with other SDKs in your project.

This is due to the fact that MAS includes 14 ad network sdks. For details, check this link.

You must remove all traces of code from other ad network SDKs, including the SDKs themselves and any implementation of ad units (banners, interstitials, rewarded videos) from your game before you can use MAS.

8. Resolution Failed and Failed to Fetch Dependencies Issue

Examples of the issue:

Issue solution:

  1. Upgrade the latest version of MAS SDK.
  2. Select “Custom Main Gradle Template”, take Unity2020 as an example.
  1. Force Resolve.
  1. Build the APK.

9. Failed Xcode Project on Unity

10. No Ads

If you can’t see the ads while testing your game, please to check out the following.

1- In your dashboard, make sure that Ads Management is enabled and the appropriate Ad types are checked for your game.

2- Verify that you have enabled the test mode

3- Control the SDK dependencies

You can debug your APK using Android Studio or any log viewer. If you see this type of errors, it means that some dependencies are missing.

In order to fix this problem, make sure that “Enable Auto-resolution” and “Enable resolution on Build” are checked in Assets -> External Dependency Manger -> Android resolver -> Settings.

If you’re using these custom build settings, make sure to Force Resolve.

If you’re using Custom Proguard File, make sure to copy Plugins/Android/Yodo1Ads/proguard-user.txt and paste it in Plugins/Android

4- Ensure that the SDK is initialized correctly

If it’s not the case, make sure you’ve used the right Appkey, Admob ID and Bundle ID.

5- Check out your ads manager script and make sure that your code is correct. If you need a sample script, you can download it here.

11. ANRs and Crashes

1- If your game crashes during your tests, you can get the crash reason by debugging your APK using Android Studio or any log viewer. You can filter by message type (Error) and search “fatal exception” in the log.

2- If you see ANRs or crashes in your Google Play Console, please click the Arrow button next to the error and scroll down to see the Stack trace. If the problem is due to MAS, please send us the log to troubleshoot the issue.

12. How to use Android API 31

1- Open the project settings and check the options shown in the following figure

2- Find out launcherTemplate.gradle and mainTemplate.gradle files

3- Open launcherTemplate.gradle and mainTemplate.gradle, and change the value of buildToolsVersion in these files to 30.0.2, as shown in the figure

4- Force Resolve

13. Cleartext traffic allowed for all domains

If you get a pre launch report in Play Store indicating an error caused by cleartextTrafficPermitted, all you have to do is to remove Yodo1Ads or Yodo1Ads.aar from Plugins/Android. Also make sure to use MAS 4.4.0+ in your games.

14. Xcode crash caused by FB

When you build your Unity game and start testing it in Xcode, you may notice that this crash occurs after you run it in your device:

This is due to the iOS resolver settings you used in Unity.

From MAS 4.4.0+, you’ll need to set your Podfile Configurations under iOS resolver settings like this:

Updated on December 2, 2021

Was this article helpful?

Related Articles