Search Unity

Tapjoy IOS build errors, but Android builds correct

Discussion in 'Unity Build Automation' started by StanislavMaksheev, Mar 8, 2016.

  1. StanislavMaksheev

    StanislavMaksheev

    Joined:
    Feb 6, 2015
    Posts:
    47
    When I build IOS I recieve errors
    All files are in SVN.
    I use official free Tapjoy package v11.5.0
    https://ltv.tapjoy.com/d/sdks

    project settings:
    - il2cpp
    - 8.0
    - ARM64
    - .net 2.0
     
  2. dannyd

    dannyd

    Unity Technologies

    Joined:
    Jun 3, 2014
    Posts:
    785
    Those errors look like the Xcode project is missing frameworks. Looking at the SDK integration guide for Tapjoy, it appears they ship with some post-export scripts that modify the Xcode project after it is exported from Unity (as most iOS plugins do). I would double check that those post-export scripts are checked in to version control. Some SVN clients ignore commonly used extensions like .dll or .a.
     
  3. StanislavMaksheev

    StanislavMaksheev

    Joined:
    Feb 6, 2015
    Posts:
    47
    Hi, I double check all files, its all in repository.

    when I try to build ios on my windows pc - in unity editor I recieve exception

     
    zuowei199261 likes this.
  4. dannyd

    dannyd

    Unity Technologies

    Joined:
    Jun 3, 2014
    Posts:
    785
    That's something you will have to check with Tapjoy on - not sure what the issue is there.

    I pulled down the Tapjoy SDK (version 11.5.0) this morning and was able to successfully build using the project settings you listed above (using Unity 5.3.1). What version of Unity are you building with in Cloud Build? Are you doing any other modifications to the Xcode project in a post-export method, or a PostProcessBuildAttribute?
     
  5. shex1337

    shex1337

    Joined:
    Mar 9, 2016
    Posts:
    3
    I'm building a game that includes TapJoy and the same problem seems to occur to me too. All the files are on SVN (there was excluded postscripts by my SVN client and I included them on my OSX machine) but I then got more errors than at first. In case someone knows why, here is the list of them (thanks in advance!) :

     
    Last edited: Mar 9, 2016
  6. shex1337

    shex1337

    Joined:
    Mar 9, 2016
    Posts:
    3
    We realized we had an earlier version of TapJoy installed. We updated the SDK to version 11.5 but now we can't compile in Unity. It shows the error :

    Am I missing a setting in unity when I build?

    Thanks!
     
  7. dannyd

    dannyd

    Unity Technologies

    Joined:
    Jun 3, 2014
    Posts:
    785
    @shex1337 - are you getting that error locally or in Cloud Build? Do you have other plugins or dll's included in your project? That error typically means that you are trying to include a dll that is not compatible with the architecture you are compiling for.
     
  8. StanislavMaksheev

    StanislavMaksheev

    Joined:
    Feb 6, 2015
    Posts:
    47
    Hi dannyd
    thanks that you tested plugin.
    In my project I remove Chartboost plugin and build game succsessfull
     
    residual_soils likes this.
  9. shex1337

    shex1337

    Joined:
    Mar 9, 2016
    Posts:
    3
    @dannyd Thank you Danny for taking the time to analyse the situation. We managed to fix everything.

    For people who stumble upon the same situation, here is some points to check that might fix the problem :
    • The DLL from TapJoy might have gotten corrupted. Trying cleaning completely and redownload/reimport the plugin (that fixed the BadImageFormatException for us)
    • Are the Postprocessbuild scripts working propely ? (For us it wasn't loading properly and TapJoy uses this to link some libraries to the project)
    • For the "_OBJC_CLASS_$_EKEvent", referenced from ... errors, we managed to fix them by going in XCode under ProjetSettings->Build Phases->Link Binary with Librairies and find the right librairies to fit with the error message (ex: "_OBJC_CLASS_$_EKEvent" means that the EventKit.framework might be missing). We had these errors because the Postprocessbuild didn't seem to run properly when we had first built from Unity.

    When we cleared those 3 points, we were able to build the project with TapJoy.

    PS: Sorry for my bad english, it's not my 1st language.
     
    MrDude likes this.
  10. Byking_Unity

    Byking_Unity

    Joined:
    Sep 14, 2018
    Posts:
    1
    Tapjoy SDK can only be built iOS on Mac.