cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carlos Santana <csantan...@gmail.com>
Subject Re: [Android] Working with M - An update
Date Thu, 16 Jul 2015 04:15:16 GMT
So far permissions is the only thing we saw that would require some
thinking for Android M, other features are OK.  I would prefer to open a
bug and push very hard and get Andrew to fix geolocation thant bringing the
geo plugin from the dead.

With Android M, we should try to follow what the platform thinks is best
when handling permissions, plugins should only ask for the minimum they
need, and trigger the permission prompt at the plugin usage, not plugin
loading/booting webview.



On Wed, Jul 15, 2015 at 7:21 PM Joe Bowser <bowserj@gmail.com> wrote:

> On Wed, Jul 15, 2015 at 11:12 AM Andrew Grieve <agrieve@chromium.org>
> wrote:
>
> > Thanks for looking into this Joe! The runtime permissions is quite a big
> > change!
> >
> > M is still in preview, so if you find any webview bugs, please feel free
> to
> > send me a repro app and I'll do my best to get it fixed.
> >
> > In terms of Cordova API changes, here's some thoughts on your branch:
> > - Plugins may want to request different perms at different times, so I'd
> > remove new functions from CordovaPlugin except onRequestPermissionResult
> >
>
> I disagree.  At most any plugin should be requesting only one group of
> permissions, and not different permissions at different times.  If the
> plugin needs that many permissions, maybe it should be broken up into
> multiple plugins.
>
>
> > - Might be better to copy how CordovaInterfaceImpl does
> > startActivityForResult/onActivityResponse rather than have PluginManager
> > do it.
> >
> >
> That might make a bit more sense, except we can't guarantee that
> CordovaInterfaceImpl is being used.  We still have applications that embed
> the webview where the CordovaActivity is implementing the CordovaInterface,
> and the permission code could get lost.
>
> However, since should be for 5.0, we could always change the API and rid
> ourselves of the weirdness of having a CordovaInterface entirely and just
> have a Delegate or something.  (And change CordovaWebView to
> CordovaWebInterface, so that it's easier for people to know what's going
> on, etc.)
>
> The number of changes we can get away with w.r.t. the API is directly
> proportionate to the gap between releases, and I think we want 5.0.x to be
> released when M actually becomes real, which isn't the same as the release
> date of M (because a lot of people don't own Nexus devices and instead use
> Samsung, HTC or Moto).
>
> Does anyone else have any thoughts on this?
>
>
>
> > On Tue, Jul 14, 2015 at 6:07 PM, Joe Bowser <bowserj@gmail.com> wrote:
> >
> > > So, since Cordova-Android wasn't completely killed off by Google at the
> > > last Google IO like I thought it would be, we're going to have to make
> > sure
> > > it's compatible with Android M (Marshmellow? Marzipan?).  The good news
> > is
> > > that this only affects the following plugins:
> > >
> > > MediaRecorder
> > > Contacts
> > > File
> > > FileTransfer
> > > Geolocation
> > >
> > > Now, for the really bad news.  We might have to write a Geolocation
> > plugin
> > > for Android again, because Google's Android WebView doesn't play nice
> > with
> > > Android's new permission system, and even when you do grant the
> > application
> > > containing the process permission to use geolocation, you still get a
> > > location error.  I still have to test this further, but it also may be
> > > possible that file URIs no longer have the ability to get the
> geolocation
> > > either, which would be weird, since this would be a Chrome thing and
> not
> > an
> > > Android thing.
> > >
> > > Given our poor track record of maintaining plugins in general, and the
> > > weird errors with Geolocation, I'm not really wanting to bring back the
> > > code, so I'm hoping that this gets resolved in M3 with the next dev
> > version
> > > of M.
> > >
> > > But so far, I have the changes that I made to Cordova on a private
> branch
> > > on Github that people can see here:
> > >
> > > https://github.com/infil00p/cordova-android/tree/m-compat
> > >
> > > Let me know if you have any questions.  I'm not sure whether this makes
> > > perfect sense yet, but I think these API changes indicate that we
> should
> > > probably bump the version to 5.0 once M comes out.
> > >
> > > Thoughts? Questions?
> > >
> >
>

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