Introducción
Desde que Google hizo que su nueva librería para unity tuviera incluido el soporte admob, el plugin de admob( de hecho todos los plugins de admob, gratuitos y de paga, pero yo me referiré al gratuito ) comenzó a marcar errores y no se podía compilar. Hoy les traigo una solución, que aunque es un poco burda, les aseguro que funciona a la perfección.
Descripción del error
Al momento de darle en Build nos aparece el mesaje de diálogo
y un error en la consola que dice algo así como:
Error building Player: CommandInvokationFailure: Unable to convert classes into dex format.
See the Console for details.
C:\Program Files (x86)\Java\jdk1.7.0_51\bin\java.exe -Xmx1024M -
Dcom.android.sdkmanager.toolsdir="C:/Program Files (x86)/Android/android-sdk-windows\tools"
-Dfile.encoding=UTF8 -jar "C:/Program Files
(x86)/Unity/Editor/Data/BuildTargetTools/AndroidPlayer\sdktools.jar" -
stderr[
UNEXPECTED TOP-
LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: ...
Explicación del problema
Como algunos desarrolladores de android sabrán, al agregar librerías con clases con el mismo nombre duplicado es lo que genra este error, simplemente, algunas clases ya estaban incluidas en el plugin de admob.
Solución
La solución es simple, borrar los archivos duplicados. Es recomendable conservar una copia de los jar originales, pero como para este caso Java se encarga de hacer un nuevo jar no afectará el proyecto. En este caso borraremos los archivos del google play games.
Archivos a borrar
Para ahorrar tiempo diré que se debe eliminar toda la carpeta
- google-play-services.jar\com\google\ads\mediation\customevent
- com/google/ads/AdRequest$ErrorCode
- com/google/ads/AdSize
- com/google/ads/AdRequest
- com/google/ads/mediation/MediationInterstitialListener
- com/google/ads/mediation/MediationServerParameters
- com/google/ads/mediation/MediationBannerAdapter
- com/google/ads/mediation/MediationAdRequest
- com/google/ads/mediation/MediationInterstitialAdapter
- com/google/ads/mediation/MediationAdapter
- com/google/ads/mediation/NetworkExtras
- com/google/ads/mediation/EmptyNetworkExtras
- com/google/ads/mediation/MediationServerParameters$Parameter
- com/google/ads/mediation/MediationServerParameters$MappingException
- com/google/ads/mediation/admob/AdMobAdapter
- com/google/ads/mediation/admob/AdMobAdapter$a
- com/google/ads/mediation/admob/AdMobAdapter$b
- com/google/ads/mediation/MediationBannerListener
- com/google/ads/AdRequest$Gender
Pero.. me da flojera hacer todo eso
No te preocupes, con dinero se arregla casi todo :PPuedes descargar el jar modificado totalmente gratis mediante el siguiente link patrocinado: Enlace de descarga
Una vez puesto tu id de app y presionado el botón enl pestaña de configuración de android para GPGS remplaza el archivo que se debe encontrar en Assets/Plugins/google-play-services_lib/libs
No hay comentarios:
Publicar un comentario