You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by Joe Bowser <bo...@gmail.com> on 2014/06/19 01:51:36 UTC

[Android] URI routing

Hey

After looking at the breakout code, it seems that there may actually
be a lot of duplicate code between Crosswalk, default AndroidWebView
and others, so I created a helper class that could be used to abstract
the shouldOverrideUrlLoading logic.  While I was in there, I deleted
most of the handlers, and now we have the correct behaviour for custom
URIs which register a broadcast receiver.

I put it on my branch here:
https://github.com/infil00p/cordova-android/tree/UriHelper

I've constantly closed every bug that's said "Add support for custom
URIs" because Android by design already supports them.  However,
partly due to legacy Android bugs, there was logic for specific URIs.
Once I ripped out the old logic and tested it on Kitkat, it appears
everything works as it should.  I'm going to test this on older
versions of Cordova, but it'd be good if other people looked at this
before I land it in the 4.0.x branch.

Thoughts?

Joe

Re: [Android] URI routing

Posted by Joe Bowser <bo...@gmail.com>.
OK, I did some tests with the misc content part of Mobile Spec and
everything checks out.  We should write more tests with JUnit on the
Android project itself to test this, but overall things seem to still
work.  This is something that we may want to backport to master as
well.  What do people think of that.  It would resolve a lot of our
current URI routing issues, and allow us to reuse code.

On Wed, Jun 18, 2014 at 5:37 PM, Andrew Grieve <ag...@chromium.org> wrote:
> Change looks good to me!
>
>
> On Wed, Jun 18, 2014 at 7:51 PM, Joe Bowser <bo...@gmail.com> wrote:
>
>> Hey
>>
>> After looking at the breakout code, it seems that there may actually
>> be a lot of duplicate code between Crosswalk, default AndroidWebView
>> and others, so I created a helper class that could be used to abstract
>> the shouldOverrideUrlLoading logic.  While I was in there, I deleted
>> most of the handlers, and now we have the correct behaviour for custom
>> URIs which register a broadcast receiver.
>>
>> I put it on my branch here:
>> https://github.com/infil00p/cordova-android/tree/UriHelper
>>
>> I've constantly closed every bug that's said "Add support for custom
>> URIs" because Android by design already supports them.  However,
>> partly due to legacy Android bugs, there was logic for specific URIs.
>> Once I ripped out the old logic and tested it on Kitkat, it appears
>> everything works as it should.  I'm going to test this on older
>> versions of Cordova, but it'd be good if other people looked at this
>> before I land it in the 4.0.x branch.
>>
>> Thoughts?
>>
>> Joe
>>

Re: [Android] URI routing

Posted by Andrew Grieve <ag...@chromium.org>.
Change looks good to me!


On Wed, Jun 18, 2014 at 7:51 PM, Joe Bowser <bo...@gmail.com> wrote:

> Hey
>
> After looking at the breakout code, it seems that there may actually
> be a lot of duplicate code between Crosswalk, default AndroidWebView
> and others, so I created a helper class that could be used to abstract
> the shouldOverrideUrlLoading logic.  While I was in there, I deleted
> most of the handlers, and now we have the correct behaviour for custom
> URIs which register a broadcast receiver.
>
> I put it on my branch here:
> https://github.com/infil00p/cordova-android/tree/UriHelper
>
> I've constantly closed every bug that's said "Add support for custom
> URIs" because Android by design already supports them.  However,
> partly due to legacy Android bugs, there was logic for specific URIs.
> Once I ripped out the old logic and tested it on Kitkat, it appears
> everything works as it should.  I'm going to test this on older
> versions of Cordova, but it'd be good if other people looked at this
> before I land it in the 4.0.x branch.
>
> Thoughts?
>
> Joe
>