Google Play Games Plugin for Unity3d possible fixed for Xcode Project

Google Play Games Plugin for Unity3d  possible fixed for Xcode Project

Unity3d version : 5.5.1

Google Play Games  Plugin version: 0.9.36 (0x00000936)

Before anything else take Note this errors is came from the google play services not from our plugin to make things clear

Building the Unity3d Project on ios for Xcode with Google play services we encounter some errors

  1. google Mobile Ads framework is missing
  2. loadRequest error on GADURewardBasedVideoAd.m on xcode
  3. Missing GoogleMobileAds.framework
  4. google sign file missing

To Fix this you must follow this important guides 1st

https://github.com/playgameservices/play-games-plugin-for-unity#ios-setup

https://github.com/playgameservices/play-games-plugin-for-unity#building-for-ios

https://github.com/playgameservices/play-games-plugin-for-unity#common-build-errors-on-ios

Important Notes:

  1. use $(inherited) on build settings for HEADER_SEARCH_PATHS, OTHER_CFLAGS and OTHER_LDFLAGS for both pod project and unity3d xcode project.
  2. Enable Module for both pod project and unity3d xcode project.
  3.  add the GoogleMobileAds.framework if this is missing
  4. always clean before you build
  5. run pod init 1st when pod install is not working
  6. check Podfile and replace it with

     

Update: we just Integrate the Google Firebase Analytics Plugin For Unity3d and yes the process is hell again and there’s so many errors if you are interested on how to fix this errors and issues please follow this link  http://www.gigadrillgames.com/2017/02/11/integrating-firebase-analytics-to-android-ultimate-plugin-for-unity3d/

if you still can’t fix this issues please follow read and watch this forum and video links

https://forum.unity3d.com/threads/ios-admob-and-xcode-7-beta-module-not-found.348360/

https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/OVfGXHJY2tA

And this youtube video will teach you on how to do this things

The ios sdk

https://firebase.google.com/docs/admob/ios/download

Google Signin sdk if you needed it

https://developers.google.com/identity/sign-in/ios/sdk/

Temporary fixed is this for load request error

Note When adding the framework it should be like this

Tips for running pod commands

https://github.com/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/issues/53

Some old setup but relevant and that help us on this errors

https://firebase.google.com/docs/admob/unity/start

Other Links that might help you if your encounter more errors

https://github.com/playgameservices/play-games-plugin-for-unity/issues/435

https://github.com/playgameservices/play-games-plugin-for-unity/issues/633

https://github.com/playgameservices/play-games-plugin-for-unity/issues/1009

https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/game-engines/pLcrV1x_Nsk

https://forum.unity3d.com/threads/gidsignin-h-file-not-found-xcode.390104/

https://github.com/playgameservices/play-games-plugin-for-unity/issues/1526

https://github.com/playgameservices/play-games-plugin-for-unity/issues/1549

https://github.com/playgameservices/play-games-plugin-for-unity#excluding-all-google-play-game-services-when-building-for-ios

https://forum.unity3d.com/threads/gidsignin-h-file-not-found-xcode.390104/

https://github.com/playgameservices/play-games-plugin-for-unity/issues/703

https://forum.unity3d.com/threads/building-unity-project-with-google-play-services-for-ios-tutorial.397869/

and one more weird thing every time you build a  xcode project on unity3d on our case google mobile ads sdk is always missing  to fix just remove and delete google mobile ads sdk on your project and add it again and then build clean and then build

and If you are so lucky and you encounter this error “Your Binary is not optimized for iphone5” this links might lead you on how to solve that problem

http://dannysu.com/2014/04/16/not-optimized-for-iphone5/

https://github.com/Simbul/baker/issues/1201

http://stackoverflow.com/questions/36757853/xcode-error-while-validation-your-binary-is-not-optimized-for-iphone-5

http://stackoverflow.com/questions/26373958/your-binary-is-not-optimized-for-iphone-5

about updating plist.info for the launch images here’s some guides and references

http://stackoverflow.com/questions/25926661/how-do-i-create-launch-images-for-iphone-6-6-plus-landscape-only-apps

http://stackoverflow.com/questions/18976412/launch-screens-supporting-ios6-and-ios7-forced-to-splash-screen

http://stackoverflow.com/questions/26441782/how-to-use-uilaunchimages-key

https://forums.xamarin.com/discussion/39400/error-itms-90096-your-binary-is-not-optimized-for-iphone-5

https://issues.apache.org/jira/browse/CB-7632

ITuneConnect and TestFlight Problems

one more thing if you upload you ipa to itunesconnect and the build is not showing on internal testing and external testing check if you received email asking for you to put permission for camera if yes just put this on your info.plist

if you still can’t see the new build on internal testing you just need to select nothing then save and then go back again and the new build should be showing after that then select it TADA!

I Hope this helps you out!

For more questions or comments or suggestions please email us at gigadrillgames@gmail.com

Merging Android Ultimate Plugin 1.7.1 on Google Play Services Part 2

Hi Guys, this is the continuation of my last post, last time we try to used both Android Ultimate Plugin version 1.7.1 with google play services that can be found on this link https://github.com/playgameservices/play-games-plugin-for-unity

and we encounter a lot of errors and we spend almost 2 days on finding a way on how to fix this plugin and libraries conflict and we found out the following check list

  1.  make sure all of your Android Manifest file in your project have the same min sdk value and target sdk value , as in every Android Manifest files search your whole project this usually is the caused of conflicts
  2. make sure your Android Manifest File that is using google play services is using this  meta  <meta-data android:name=”com.google.android.gms.version” android:value=”@integer/google_play_services_version” /> take note do not hardcode the version number and make sure that this meta tag is inside <Application TAG> not inside <Activity TAG>
  3.  if you have a values.xml with gms  with hardcoded version number inside just delete it , this values.xml file will just make everything worst
  4. See to it that the Android Plugin that you are using is using provided instead of compile on their Build.gradle dependency settings for classes.jar which is the jar that came from unity3d app directory. because if this is compile it will conflict on Unity3d Classes.jar because i think unity3d put classes.jar automatic when we build on Android

Some optional checklist that people says on stack overflow, unity3d forum and other forums

  1.  Right now  (  Unity3d version 5.5.1f1 ) the max  Android API support is 23 so delete the build tools and please don’t delete the SDK tools 🙂 just build tools greater than 23 API on your Android SDK.
  2.  Make sure your target SDK on your Android Manifest is declare unless unity3d will used the maximum SDK available on your machine.

And that’s the checklist and now back to using  both Android Ultimate Plugin and Google play services these are the steps

  1.  make sure all Android Manifest on your project is using this min sdk  and target sdk  <uses-sdk android:minSdkVersion=”9″ android:targetSdkVersion=”16″ />
  2.  Unity3d Player Settings should be set to minimum API 9 too
  3.  Make sure you use these exact libraries as of now we tested these and it works
  •  appcompat-v7-23.0.1.aar
  • support-v4-23.0.1.aar
  • play-services-games-9.2.1.aar
  • play-services-base-9.2.1.aar
  • play-services-basement-9.2.1

Note: some of these libraries are included when you import the google play services plugin

you can download these new libraries on this link because Unity3d  asset store for sure will not allow this libraries to be included on the plugin  https://drive.google.com/file/d/0Bw14w3QBZaGxek5haDNNeVNTRGc/view?usp=sharing

More Steps

  1.  check all the project.properties files in your project they all should used the same TargetSDK value if not you will have a conflict and it’s very high
  2.  find any values.xml lurking around with hard coded google play services values inside and delete them they create lot’s of problems
  3.  make sure you don’t have any duplicate Libraries jar,aar files and other library files they will introduce conflict as well.

And then after these changes we successfully build our project with both Android Ultimate Plugin and Google play Services and they work 🙂

The Game Sample with Google Play Services, Admob, Android Ultimate Plugin and Firebase Analytics

https://play.google.com/store/apps/details?id=com.gigadrillgames.fingervsants

here in this game we used both google play services and AUP , on share we use our plugin see it works 🙂

That’s it,  i hope this guide can help you find the problems and the conflict when using more android plugin in Unity3d Projects.

 

Update 02/12/2017

We have encounter some errors when building on xcode

Take Note this errors is came from the google play services not from our plugin to make things clear

For more details please follow read this link

http://www.gigadrillgames.com/2017/02/13/google-play-games-plugin-for-unity3d-possible-fixed-for-xcode-project/

 

for more questions or comments or suggestions just email us at gigadrillgames@gmail.com and if you have time please like our page https://www.facebook.com/gigadrillgames

Thanks for visiting and reading 🙂