Android Twitter Fabric SDK conflict with Google GSON -



Android Twitter Fabric SDK conflict with Google GSON -

i'm having difficulties integrating twitter fabric sdk app. followed steps of twitter tutorial , everyhting went fine when seek build project gradle, error :

error:execution failed task ':app:dexdebug'. > com.android.ide.common.internal.loggederrorexception: failed run command: d:\android\android-studio\sdk\build-tools\android-4.4w\dx.bat --dex --output ... error code: 2 output: unexpected top-level exception: com.android.dex.dexexception: multiple dex files define lcom/google/gson/jsonserializer; @ com.android.dx.merge.dexmerger.readsortabletypes(dexmerger.java:594) @ com.android.dx.merge.dexmerger.getsortedtypes(dexmerger.java:552) @ com.android.dx.merge.dexmerger.mergeclassdefs(dexmerger.java:533) @ com.android.dx.merge.dexmerger.mergedexes(dexmerger.java:170) @ com.android.dx.merge.dexmerger.merge(dexmerger.java:188) @ com.android.dx.command.dexer.main.mergelibrarydexbuffers(main.java:439) @ com.android.dx.command.dexer.main.runmonodex(main.java:287) @ com.android.dx.command.dexer.main.run(main.java:230) @ com.android.dx.command.dexer.main.main(main.java:199) @ com.android.dx.command.main.main(main.java:103)

i tried removing static gson library app module lib folder , went fine afterwards. same when removing line adding twitter sdk gradle module dependencies i'm pretty sure there kind of conflict between these 2 , i'm looking resolve it.

any help appreciated !

in case of utilize people out there here gradle app module file :

apply plugin: 'com.android.application' apply plugin: 'io.fabric' android { ... buildtypes { release { runproguard false proguardfiles getdefaultproguardfile('proguard-android.txt'), 'proguard-rules.pro' } debug { signingconfig signingconfigs.debug ext.enablecrashlytics = false } } } repositories { jcenter() mavencentral() maven{ url 'https://maven.fabric.io/repo'} } dependencies { compile filetree(dir: 'libs', include: ['*.jar']) compile project(':facebook') compile 'com.android.support:support-v13:20.0.0' compile 'com.google.android.gms:play-services:6.1.11' compile('com.twitter.sdk.android:twitter:1.0.0@aar') { transitive = true; } }

i'm twitter android developer.

try running ./gradlew app:dependencies see dependencies of gradle tasks. compile dependencies include like:

+--- com.twitter.sdk.android:twitter-core:1.0.0 | | +--- com.squareup.retrofit:retrofit:1.6.1 | | | \--- com.google.code.gson:gson:2.2.4 | | +--- com.google.code.gson:gson:2.2.4 | | \--- io.fabric.sdk.android:fabric:1.0.0

which shows gson indeed used fabric internally.

my recommendation remove gson libs/ folder , add together direct dependency in build.gradle instead of excluding twitter deps graph. may take advantage of dependency resolution mechanisms in build tool.

dependencies { compile filetree(dir: 'libs', include: ['*.jar']) // maybe remove this. compile project(':facebook') compile 'com.android.support:support-v13:20.0.0' compile 'com.google.android.gms:play-services:6.1.11' compile('com.twitter.sdk.android:twitter:1.0.0@aar') { transitive = true; } compile 'com.google.code.gson:gson:2.2.4' // added. }

android twitter gradle gson fabric-twitter

Comments

Popular posts from this blog

xslt - DocBook 5 to PDF transform failing with error: "fo:flow" is missing child elements. Required content model: marker* -

mediawiki - How do I insert tables inside infoboxes on Wikia pages? -

Local Service User Logged into Windows -