Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.

Bug iOS build error with AdColony adapter

Discussion in 'Unity Mediation' started by Ponytech, Nov 26, 2021.

  1. Ponytech

    Ponytech

    Joined:
    Jun 13, 2016
    Posts:
    33
    I managed to successfully build my project on iOS with only the Unity Ads Adapter but when I try to add the AdColony adapter (I haven't tried with others) I get an error in XCode:

    Undefined symbol: _OBJC_CLASS_$_SKAdImpression


    My setup:
    Unity 2020.3.21
    Mediation 0.2.1-preview.2
    XCode 12.4
    MacOS 10.15.7

    Any ideas?
     
  2. DeclanMcPartlin

    DeclanMcPartlin

    Unity Technologies

    Joined:
    Nov 19, 2020
    Posts:
    143
    Hey @Ponytech,

    This is due to AdColony having a hard requirement on Xcode 12.5. Here's their changelog. Generally we recommend using Xcode 12.5.1 and up to avoid such scenarios.

    Let us know if that solves your issue, thank you!
     
  3. Ponytech

    Ponytech

    Joined:
    Jun 13, 2016
    Posts:
    33
    Hey @DeclanMcPartlin

    Thanks for pointing out this requirement.

    As I mentioned in the other thread I am stuck with XCode 12.4 as it requires at least Mac OS 11 which is not supported on my Mac Mini 2012 (thank you Apple...)

    I'll just skip AdColony for now I guess.

    Thanks again!
     
  4. DeclanMcPartlin

    DeclanMcPartlin

    Unity Technologies

    Joined:
    Nov 19, 2020
    Posts:
    143
    Hey @Ponytech,

    Understood. There is a way around this, by using a Dependency Override XML file. I've attached the XML that would be required for your use case. Include this file anywhere in the Assets folder, we generally recommend the Assets/Editor location for such XMLs. Once you have included this XML in your project, make a new iOS build and now AdColony should be able to run on Xcode 12 (by using an older version of AdColony).

    It is important that such Override XMLs are suffixed with: -Dependencies.xml. Here is the contents of this XML for clarity:


    Code (CSharp):
    1. <dependencies>
    2.   <iosPods>
    3.     <iosPod name="AdColony" version="4.6.0"/>
    4.   </iosPods>
    5. </dependencies>
    Let us know if this works for you, thanks!
     

    Attached Files:

    Last edited: Dec 2, 2021
    abdullahdar likes this.
  5. Ponytech

    Ponytech

    Joined:
    Jun 13, 2016
    Posts:
    33
    It did work, thanks a lot!