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
- 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
- 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>
- 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
- 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
- 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.
- 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
- make sure all Android Manifest on your project is using this min sdk and target sdk <uses-sdk android:minSdkVersion=”9″ android:targetSdkVersion=”16″ />
- Unity3d Player Settings should be set to minimum API 9 too
- Make sure you use these exact libraries as of now we tested these and it works
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
- 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
- find any values.xml lurking around with hard coded google play services values inside and delete them they create lot’s of problems
- 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
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.
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
for more questions or comments or suggestions just email us at firstname.lastname@example.org and if you have time please like our page https://www.facebook.com/gigadrillgames
Thanks for visiting and reading 🙂