cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carlos Santana <csantan...@gmail.com>
Subject Re: Discuss Android plugin compatibility problem
Date Thu, 16 Jul 2015 16:35:51 GMT
you mean the scripts in cordova-android right? then yes

+1 create jira bug, enhancements etc.. if doesn't get track it doesn't get
done

On Thu, Jul 16, 2015 at 12:26 PM Joe Bowser <bowserj@gmail.com> wrote:

> Is there a bug created for this? It sounds like we should have the local
> scripts handle dependency adding on Android.
>
> On Thu, Jul 16, 2015 at 9:14 AM Carlos Santana <csantana23@gmail.com>
> wrote:
>
> > +1 gradle declared dependencies only, cli to warn users about plugins
> > having libraries that will conflict, future is gradle no ANT I'm ok to
> > start deprecating ant going forward.
> >
> >
> > On Thu, Jul 16, 2015 at 11:27 AM Sergey Grebnov (Akvelon) <
> > v-segreb@microsoft.com> wrote:
> >
> > > Hi guys, I want to raise the following question - what we should
> > > recommend  plugin developers to avoid 'Multiple dex files defined'
> issue
> > on
> > > Android, for example [3]
> > >
> > > UNEXPECTED TOP-LEVEL EXCEPTION:
> > >         com.android.dex.DexException: Multiple dex files define
> > >
> >
> Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
> > >
> > >
> > > To reproduce this problem you can add both Facebook [1] and
> PushPlugin[2]
> > > and then build android platform.
> > >
> > > This happens due to we still use jars to add plugin dependencies, but
> > > there are several very popular among them (like android-support, gson)
> so
> > > we bring the same dependencies several times so build fails.
> > >
> > > I think we should start recommending people to start adding
> > > utility/common/popular dependencies via corresponding gradle
> > configuration
> > > (not using libs folder) as the only way to support multiple plugins
> which
> > > could rely on the same dependency. In this case gradle will be able to
> > > handle this situation correctly using its smart Dependency
> > > Management/Versioning logic [4].
> > >
> > > For example,
> > >
> > > <source-file src="src/android/com/plugin/android-support-v13.jar"
> > > target-dir="libs/" />
> > > ->
> > > <framework src="com.android.support:support-v13:21.0.0" />
> > >
> > > Disadvantage of this approach is that Ant build won't be supported (I
> > know
> > > some tricky/more complex way to correctly support both Ant and Gradle
> > but I
> > > don't think it is worth adding more complexity for plugins developers
> > just
> > > to continue supporting Ant).
> > >
> > > Guys, any recommendations/thoughts how we should proceed in this
> > > situation? Maybe someone has better solution for this problem?
> > >
> > > [1] https://github.com/Wizcorp/phonegap-facebook-plugin
> > > [2] https://github.com/phonegap-build/PushPlugin
> > > [3] https://github.com/Wizcorp/phonegap-facebook-plugin/issues/1028
> > > [4]
> https://docs.gradle.org/current/userguide/dependency_management.html
> > >
> > > Thx!
> > > Sergey
> > >
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
> > > For additional commands, e-mail: dev-help@cordova.apache.org
> > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message