Arne Kepp created CB-8817:
-----------------------------

             Summary: SystemWebClient.shouldInterceptRequest always returns 
false due to PluginManager
                 Key: CB-8817
                 URL: https://issues.apache.org/jira/browse/CB-8817
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android
    Affects Versions: 4.0.0
            Reporter: Arne Kepp
            Priority: Blocker


I'm using 4.0.0-dev (updated today) via github in order to use Android Studio

In my config.xml I have <access origin="*" /> and I've verified that this has 
been propagated to the Android platform. I've also cleaned out my iOS platform 
and verified that external URLs do work properly there.

However, on Android I get  "W/SystemWebViewClient﹕ URL blocked by whitelist: " 
for all external URLs.

I'm not familiar with the codebase, but this is what I think happens:

PluginManager.shouldAllowRequest returns false by default

SystemWebViewClient.shouldInterceptRequest  checks 
parentEngine.pluginManager.shouldAllowRequest(url)

which, because of the aforementioned default value, denies the request before 
even looking at the XML configuration.

My guess is that PluginManager should return a Boolean which is null when the 
PluginManager doesn't have an opinion. ( And maybe the PluginManager shouldn't 
concern itself with the default policies for certain protocols, separation of 
concerns and all that. )

Seems to have snuck in here:
https://github.com/apache/cordova-android/commit/c12d93e77f41a363521f064f5e8904796dbcc339



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to