From b486711d68dc6426b58142143f938090605afbeb Mon Sep 17 00:00:00 2001 From: Joe Bowser Date: Wed, 11 Jul 2012 11:23:31 -0700 Subject: [PATCH] Combining plugins.xml and cordova.xml to make config.xml --- framework/res/xml/config.xml | 54 +++++++++++++++++++ .../org/apache/cordova/CordovaWebView.java | 7 ++- .../org/apache/cordova/api/PluginManager.java | 17 ++++-- 3 files changed, 72 insertions(+), 6 deletions(-) create mode 100644 framework/res/xml/config.xml diff --git a/framework/res/xml/config.xml b/framework/res/xml/config.xml new file mode 100644 index 00000000..d37aba5c --- /dev/null +++ b/framework/res/xml/config.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/framework/src/org/apache/cordova/CordovaWebView.java b/framework/src/org/apache/cordova/CordovaWebView.java index ca0dd6d7..b3ad35c5 100755 --- a/framework/src/org/apache/cordova/CordovaWebView.java +++ b/framework/src/org/apache/cordova/CordovaWebView.java @@ -596,7 +596,12 @@ public class CordovaWebView extends WebView { * */ private void loadConfiguration() { - int id = getResources().getIdentifier("cordova", "xml", this.cordova.getActivity().getPackageName()); + int id = getResources().getIdentifier("config", "xml", this.cordova.getActivity().getPackageName()); + if(id == 0) + { + id = getResources().getIdentifier("cordova", "xml", this.cordova.getActivity().getPackageName()); + Log.i("CordovaLog", "config.xml missing, reverting to cordova.xml"); + } if (id == 0) { LOG.i("CordovaLog", "cordova.xml missing. Ignoring..."); return; diff --git a/framework/src/org/apache/cordova/api/PluginManager.java b/framework/src/org/apache/cordova/api/PluginManager.java index b9df52d7..a48de67b 100755 --- a/framework/src/org/apache/cordova/api/PluginManager.java +++ b/framework/src/org/apache/cordova/api/PluginManager.java @@ -92,9 +92,16 @@ public class PluginManager { * Load plugins from res/xml/plugins.xml */ public void loadPlugins() { - int id = this.ctx.getActivity().getResources().getIdentifier("plugins", "xml", this.ctx.getActivity().getPackageName()); + int id = this.ctx.getActivity().getResources().getIdentifier("config", "xml", this.ctx.getActivity().getPackageName()); + if(id == 0) + { + id = this.ctx.getActivity().getResources().getIdentifier("plugins", "xml", this.ctx.getActivity().getPackageName()); + LOG.i(TAG, "Using plugins.xml instead of config.xml. plugins.xml will eventually be deprecated"); + } if (id == 0) { this.pluginConfigurationMissing(); + //We have the error, we need to exit without crashing! + return; } XmlResourceParser xml = this.ctx.getActivity().getResources().getXml(id); int eventType = -1; @@ -361,9 +368,9 @@ public class PluginManager { } private void pluginConfigurationMissing() { - System.err.println("====================================================================================="); - System.err.println("ERROR: plugin.xml is missing. Add res/xml/plugins.xml to your project."); - System.err.println("https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=blob;f=framework/res/xml/plugins.xml"); - System.err.println("====================================================================================="); + LOG.e(TAG, "====================================================================================="); + LOG.e(TAG, "ERROR: plugin.xml is missing. Add res/xml/plugins.xml to your project."); + LOG.e(TAG, "https://git-wip-us.apache.org/repos/asf?p=incubator-cordova-android.git;a=blob;f=framework/res/xml/plugins.xml"); + LOG.e(TAG, "====================================================================================="); } }