I created a cordova plugin to provide the aerogear-android-authz dependencies [1], and changed in the aerogear-cordova-oauth2 plugin to use this new plugin as a dependency via the PR:
https://github.com/aerogear/aerogear-cordova-oauth2/pull/16

I am now able to add the aerogear-cordova-oauth2 to a project, and successfully run the default cordova build.  I've tested this with my google-play-services branch, and it works well.

Looking forward to hearing feedback from those more familiar with the existing plugin's functionality.

[1] https://github.com/bleathem/aerogear-authz-cordova

Brian

On 2015-03-06 03:45 AM, Erik Jan de Wit wrote:
Totally agree, we have to get rid of the gradle workaround, it should not be necessary to edit the generated platform directories. I see a third option though on the 4.0 release of the android platform aar support will be added and one could add a framwork dependency with type aar. We could also opt to wait for this release. But I’m +1 on making the oath2 plugin like the google play services plugin so that it works with `older` versions as well.
 
On 5 Mar,2015, at 23:00 , Brian Leathem <bleathem@gmail.com> wrote:







Hello gear-heads,



The aerogear-cordova-oauth2 project currently has a requirement to
be built with gradle, in order to be able to build the aerogear
oauth2 dependencies.  This affects users, as once they add the
aeorgear cordova plugin to their project, they have to switch to a
gradle-based build.



I propose we look at what was done with google-play-services as a
means of working around this gradle requirement.  There are two ways
to introduce a dependency to google-play-services in your cordova
project/plugin:



a) Add a maven dependency:

com.google.android.gms:play-services:4.0.30@aar

b) Add a cordova plulgin dependency: com.google.playservices



a) can be achieved only after following the
how-to-build-aerogear-android [1] instructions, so an even bigger
inconvenience for users.



b) on the other hand is as simple as:



i)  running "cordova plugin add com.google.playservices" in your
project folder

or

ii) adding "com.google.playservices" as a dependency to the android
section of your plugin's plugin.xml file [2].



This is made possible because the google-play-services binaries are
published as a cordova plugin via a project hosted on github [3].



I propose we create a project similar to [3], to hold the aerogear
android dependencies.  Call it "aerogear-android-services" for the
sake of this argument.  We would then register this project with
cordova so the aerogear-cordova-oauth2 plugin can have a dependency
on the aerogear-android-services cordova plugin, rather then the
maven/gradle dependency we have now.  This would then alleviate the
aerogear-cordova-oauth2 from needing to be built with gradle.



Thoughts?



[1]
https://aerogear.org/docs/guides/aerogear-android/how-to-build-aerogear-android/

[2]
https://github.com/bleathem/cordova-oauth-google-services/blob/master/plugin.xml#L28

[3] https://github.com/MobileChromeApps/google-play-services





_______________________________________________
aerogear-dev mailing list
aerogear-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev




_______________________________________________
aerogear-dev mailing list
aerogear-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev