cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Bowser <bows...@gmail.com>
Subject Re: Discuss Android plugin compatibility problem
Date Thu, 16 Jul 2015 17:29:12 GMT
Ideally Maven should handle all this shit, and it should be invisible.  Our
plugin system should not handle Java dependencies or any other platform
dependencies, and we should work behind the scenes to make this work like
how Crosswalk works.

On Thu, Jul 16, 2015 at 10:18 AM Steven Gill <stevengill97@gmail.com> wrote:

> Would this be added to plugin.xml?
>
> On Thu, Jul 16, 2015 at 10:09 AM, Mefire O. <ommenjik@microsoft.com>
> wrote:
>
> > +1 on moving deps to gradle.
> >
> > On Jul 16, 2015 9:37 AM, Carlos Santana <csantana23@gmail.com> wrote:
> > 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