From 0d4d0b8a37d838496e4fc025173aa0ad39256b40 Mon Sep 17 00:00:00 2001 From: Yavor Georgiev Date: Wed, 13 Mar 2013 19:52:49 +0200 Subject: [PATCH] Adding workaround for ICS asset URLs with spaces --- .../cordova/IceCreamCordovaWebViewClient.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/framework/src/org/apache/cordova/IceCreamCordovaWebViewClient.java b/framework/src/org/apache/cordova/IceCreamCordovaWebViewClient.java index a96b2428..0a83571f 100644 --- a/framework/src/org/apache/cordova/IceCreamCordovaWebViewClient.java +++ b/framework/src/org/apache/cordova/IceCreamCordovaWebViewClient.java @@ -42,7 +42,7 @@ public class IceCreamCordovaWebViewClient extends CordovaWebViewClient { @Override public WebResourceResponse shouldInterceptRequest(WebView view, String url) { - if(url.contains("?") || url.contains("#")){ + if(url.contains("?") || url.contains("#") || needsSpaceInAssetUrlFix(url)){ return generateWebResourceResponse(url); } else { return super.shouldInterceptRequest(view, url); @@ -80,4 +80,18 @@ public class IceCreamCordovaWebViewClient extends CordovaWebViewClient { return null; } + private static boolean needsIceCreamSpaceInAssetUrlFix(String url) { + if (!url.contains("%20")){ + return false; + } + + switch(android.os.Build.VERSION.SDK_INT){ + case android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH: + case android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1: + return true; + default: + return false; + } + } + }