You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by sh...@apache.org on 2013/09/20 02:37:27 UTC
[1/2] ios commit: Updated cordova-js for 3.1.0-rc1
Updated Branches:
refs/heads/master 4b823bac4 -> 6431b39b1
Updated cordova-js for 3.1.0-rc1
Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/f5d3c5ad
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/f5d3c5ad
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/f5d3c5ad
Branch: refs/heads/master
Commit: f5d3c5ad154f28f2b663e68cb9219bafbfb18a6f
Parents: 4b823ba
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Sep 19 17:37:02 2013 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Sep 19 17:37:02 2013 -0700
----------------------------------------------------------------------
CordovaLib/cordova.js | 461 +++++++++++++++++++--------------------------
1 file changed, 191 insertions(+), 270 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/f5d3c5ad/CordovaLib/cordova.js
----------------------------------------------------------------------
diff --git a/CordovaLib/cordova.js b/CordovaLib/cordova.js
index d1f13a6..0ca0782 100644
--- a/CordovaLib/cordova.js
+++ b/CordovaLib/cordova.js
@@ -1,5 +1,5 @@
// Platform: ios
-// 3.0.0-0-ge670de9
+// 3.1.0-rc1
/*
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
@@ -19,7 +19,7 @@
under the License.
*/
;(function() {
-var CORDOVA_JS_BUILD_LABEL = '3.0.0-0-ge670de9';
+var CORDOVA_JS_BUILD_LABEL = '3.1.0-rc1';
// file: lib/scripts/require.js
var require,
@@ -100,16 +100,7 @@ define("cordova", function(require, exports, module) {
var channel = require('cordova/channel');
-
-/**
- * Listen for DOMContentLoaded and notify our channel subscribers.
- */
-document.addEventListener('DOMContentLoaded', function() {
- channel.onDOMContentLoaded.fire();
-}, false);
-if (document.readyState == 'complete' || document.readyState == 'interactive') {
- channel.onDOMContentLoaded.fire();
-}
+var platform = require('cordova/platform');
/**
* Intercept calls to addEventListener + removeEventListener and handle deviceready,
@@ -177,21 +168,12 @@ function createEvent(type, data) {
return event;
}
-if(typeof window.console === "undefined") {
- window.console = {
- log:function(){}
- };
-}
-// there are places in the framework where we call `warn` also, so we should make sure it exists
-if(typeof window.console.warn === "undefined") {
- window.console.warn = function(msg) {
- this.log("warn: " + msg);
- }
-}
var cordova = {
define:define,
require:require,
+ version:CORDOVA_JS_BUILD_LABEL,
+ platformId:platform.id,
/**
* Methods to add/remove your own addEventListener hijacking on document + window.
*/
@@ -227,16 +209,16 @@ var cordova = {
var evt = createEvent(type, data);
if (typeof documentEventHandlers[type] != 'undefined') {
if( bNoDetach ) {
- documentEventHandlers[type].fire(evt);
+ documentEventHandlers[type].fire(evt);
}
else {
- setTimeout(function() {
- // Fire deviceready on listeners that were registered before cordova.js was loaded.
- if (type == 'deviceready') {
- document.dispatchEvent(evt);
- }
- documentEventHandlers[type].fire(evt);
- }, 0);
+ setTimeout(function() {
+ // Fire deviceready on listeners that were registered before cordova.js was loaded.
+ if (type == 'deviceready') {
+ document.dispatchEvent(evt);
+ }
+ documentEventHandlers[type].fire(evt);
+ }, 0);
}
} else {
document.dispatchEvent(evt);
@@ -326,10 +308,6 @@ var cordova = {
}
};
-// Register pause, resume and deviceready channels as events on document.
-channel.onPause = cordova.addDocumentEventHandler('pause');
-channel.onResume = cordova.addDocumentEventHandler('resume');
-channel.onDeviceReady = cordova.addStickyDocumentEventHandler('deviceready');
module.exports = cordova;
@@ -353,7 +331,7 @@ var typeMap = {
};
function extractParamName(callee, argIndex) {
- return (/.*?\((.*?)\)/).exec(callee)[1].split(', ')[argIndex];
+ return (/.*?\((.*?)\)/).exec(callee)[1].split(', ')[argIndex];
}
function checkArgs(spec, functionName, args, opt_callee) {
@@ -407,8 +385,8 @@ define("cordova/base64", function(require, exports, module) {
var base64 = exports;
base64.fromArrayBuffer = function(arrayBuffer) {
- var array = new Uint8Array(arrayBuffer);
- return uint8ToBase64(array);
+ var array = new Uint8Array(arrayBuffer);
+ return uint8ToBase64(array);
};
//------------------------------------------------------------------------------
@@ -430,7 +408,7 @@ var b64_12bitTable = function() {
}
b64_12bitTable = function() { return b64_12bit; };
return b64_12bit;
-}
+};
function uint8ToBase64(rawData) {
var numBytes = rawData.byteLength;
@@ -497,36 +475,36 @@ function assignOrWrapInDeprecateGetter(obj, key, value, message) {
function include(parent, objects, clobber, merge) {
each(objects, function (obj, key) {
try {
- var result = obj.path ? require(obj.path) : {};
-
- if (clobber) {
- // Clobber if it doesn't exist.
- if (typeof parent[key] === 'undefined') {
- assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
- } else if (typeof obj.path !== 'undefined') {
- // If merging, merge properties onto parent, otherwise, clobber.
- if (merge) {
- recursiveMerge(parent[key], result);
- } else {
- assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
- }
- }
- result = parent[key];
- } else {
- // Overwrite if not currently defined.
- if (typeof parent[key] == 'undefined') {
- assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
+ var result = obj.path ? require(obj.path) : {};
+
+ if (clobber) {
+ // Clobber if it doesn't exist.
+ if (typeof parent[key] === 'undefined') {
+ assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
+ } else if (typeof obj.path !== 'undefined') {
+ // If merging, merge properties onto parent, otherwise, clobber.
+ if (merge) {
+ recursiveMerge(parent[key], result);
+ } else {
+ assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
+ }
+ }
+ result = parent[key];
} else {
- // Set result to what already exists, so we can build children into it if they exist.
- result = parent[key];
+ // Overwrite if not currently defined.
+ if (typeof parent[key] == 'undefined') {
+ assignOrWrapInDeprecateGetter(parent, key, result, obj.deprecated);
+ } else {
+ // Set result to what already exists, so we can build children into it if they exist.
+ result = parent[key];
+ }
}
- }
- if (obj.children) {
- include(result, obj.children, clobber, merge);
- }
+ if (obj.children) {
+ include(result, obj.children, clobber, merge);
+ }
} catch(e) {
- utils.alert('Exception building cordova JS globals: ' + e + ' for key "' + key + '"');
+ utils.alert('Exception building cordova JS globals: ' + e + ' for key "' + key + '"');
}
});
}
@@ -811,36 +789,6 @@ module.exports = channel;
});
-// file: lib/common/commandProxy.js
-define("cordova/commandProxy", function(require, exports, module) {
-
-
-// internal map of proxy function
-var CommandProxyMap = {};
-
-module.exports = {
-
- // example: cordova.commandProxy.add("Accelerometer",{getCurrentAcceleration: function(successCallback, errorCallback, options) {...},...);
- add:function(id,proxyObj) {
- console.log("adding proxy for " + id);
- CommandProxyMap[id] = proxyObj;
- return proxyObj;
- },
-
- // cordova.commandProxy.remove("Accelerometer");
- remove:function(id) {
- var proxy = CommandProxyMap[id];
- delete CommandProxyMap[id];
- CommandProxyMap[id] = null;
- return proxy;
- },
-
- get:function(service,action) {
- return ( CommandProxyMap[service] ? CommandProxyMap[service][action] : null );
- }
-};
-});
-
// file: lib/ios/exec.js
define("cordova/exec", function(require, exports, module) {
@@ -892,7 +840,7 @@ function shouldBundleCommandJson() {
function massageArgsJsToNative(args) {
if (!args || utils.typeName(args) != 'Array') {
- return args;
+ return args;
}
var ret = [];
args.forEach(function(arg, i) {
@@ -964,18 +912,17 @@ function iOSExec() {
callbackId = 'INVALID';
} else {
// FORMAT TWO, REMOVED
- try {
- splitCommand = arguments[0].split(".");
- action = splitCommand.pop();
- service = splitCommand.join(".");
- actionArgs = Array.prototype.splice.call(arguments, 1);
+ try {
+ splitCommand = arguments[0].split(".");
+ action = splitCommand.pop();
+ service = splitCommand.join(".");
+ actionArgs = Array.prototype.splice.call(arguments, 1);
- console.log('The old format of this exec call has been removed (deprecated since 2.1). Change to: ' +
+ console.log('The old format of this exec call has been removed (deprecated since 2.1). Change to: ' +
"cordova.exec(null, null, \"" + service + "\", \"" + action + "\"," + JSON.stringify(actionArgs) + ");"
- );
- return;
- } catch (e) {
- }
+ );
+ return;
+ } catch (e) {}
}
// Register the callbacks and add the callbackId to the positional
@@ -1074,6 +1021,120 @@ module.exports = iOSExec;
});
+// file: lib/common/init.js
+define("cordova/init", function(require, exports, module) {
+
+var channel = require('cordova/channel');
+var cordova = require('cordova');
+var modulemapper = require('cordova/modulemapper');
+var platform = require('cordova/platform');
+var pluginloader = require('cordova/pluginloader');
+
+var platformInitChannelsArray = [channel.onNativeReady, channel.onPluginsReady];
+
+function logUnfiredChannels(arr) {
+ for (var i = 0; i < arr.length; ++i) {
+ if (arr[i].state != 2) {
+ console.log('Channel not fired: ' + arr[i].type);
+ }
+ }
+}
+
+window.setTimeout(function() {
+ if (channel.onDeviceReady.state != 2) {
+ console.log('deviceready has not fired after 5 seconds.');
+ logUnfiredChannels(platformInitChannelsArray);
+ logUnfiredChannels(channel.deviceReadyChannelsArray);
+ }
+}, 5000);
+
+// Replace navigator before any modules are required(), to ensure it happens as soon as possible.
+// We replace it so that properties that can't be clobbered can instead be overridden.
+function replaceNavigator(origNavigator) {
+ var CordovaNavigator = function() {};
+ CordovaNavigator.prototype = origNavigator;
+ var newNavigator = new CordovaNavigator();
+ // This work-around really only applies to new APIs that are newer than Function.bind.
+ // Without it, APIs such as getGamepads() break.
+ if (CordovaNavigator.bind) {
+ for (var key in origNavigator) {
+ if (typeof origNavigator[key] == 'function') {
+ newNavigator[key] = origNavigator[key].bind(origNavigator);
+ }
+ }
+ }
+ return newNavigator;
+}
+if (window.navigator) {
+ window.navigator = replaceNavigator(window.navigator);
+}
+
+if (!window.console) {
+ window.console = {
+ log: function(){}
+ };
+}
+if (!window.console.warn) {
+ window.console.warn = function(msg) {
+ this.log("warn: " + msg);
+ };
+}
+
+// Register pause, resume and deviceready channels as events on document.
+channel.onPause = cordova.addDocumentEventHandler('pause');
+channel.onResume = cordova.addDocumentEventHandler('resume');
+channel.onDeviceReady = cordova.addStickyDocumentEventHandler('deviceready');
+
+// Listen for DOMContentLoaded and notify our channel subscribers.
+if (document.readyState == 'complete' || document.readyState == 'interactive') {
+ channel.onDOMContentLoaded.fire();
+} else {
+ document.addEventListener('DOMContentLoaded', function() {
+ channel.onDOMContentLoaded.fire();
+ }, false);
+}
+
+// _nativeReady is global variable that the native side can set
+// to signify that the native code is ready. It is a global since
+// it may be called before any cordova JS is ready.
+if (window._nativeReady) {
+ channel.onNativeReady.fire();
+}
+
+modulemapper.clobbers('cordova', 'cordova');
+modulemapper.clobbers('cordova/exec', 'cordova.exec');
+modulemapper.clobbers('cordova/exec', 'Cordova.exec');
+
+// Call the platform-specific initialization.
+platform.bootstrap && platform.bootstrap();
+
+pluginloader.load(function() {
+ channel.onPluginsReady.fire();
+});
+
+/**
+ * Create all cordova objects once native side is ready.
+ */
+channel.join(function() {
+ modulemapper.mapModules(window);
+
+ platform.initialize && platform.initialize();
+
+ // Fire event to notify that all objects are created
+ channel.onCordovaReady.fire();
+
+ // Fire onDeviceReady event once page has fully loaded, all
+ // constructors have run and cordova info has been received from native
+ // side.
+ channel.join(function() {
+ require('cordova').fireDocumentEvent('deviceready');
+ }, channel.deviceReadyChannelsArray);
+
+}, platformInitChannelsArray);
+
+
+});
+
// file: lib/common/modulemapper.js
define("cordova/modulemapper", function(require, exports, module) {
@@ -1170,14 +1231,6 @@ exports.getOriginalSymbol = function(context, symbolPath) {
return obj;
};
-exports.loadMatchingModules = function(matchingRegExp) {
- for (var k in moduleMap) {
- if (matchingRegExp.exec(k)) {
- require(k);
- }
- }
-};
-
exports.reset();
@@ -1187,53 +1240,10 @@ exports.reset();
define("cordova/platform", function(require, exports, module) {
module.exports = {
- id: "ios",
- initialize:function() {
- var modulemapper = require('cordova/modulemapper');
-
- modulemapper.loadMatchingModules(/cordova.*\/plugininit$/);
-
- modulemapper.loadMatchingModules(/cordova.*\/symbols$/);
- modulemapper.mapModules(window);
- }
-};
-
-
-});
-
-// file: lib/common/plugin/echo.js
-define("cordova/plugin/echo", function(require, exports, module) {
-
-var exec = require('cordova/exec'),
- utils = require('cordova/utils');
-
-/**
- * Sends the given message through exec() to the Echo plugin, which sends it back to the successCallback.
- * @param successCallback invoked with a FileSystem object
- * @param errorCallback invoked if error occurs retrieving file system
- * @param message The string to be echoed.
- * @param forceAsync Whether to force an async return value (for testing native->js bridge).
- */
-module.exports = function(successCallback, errorCallback, message, forceAsync) {
- var action = 'echo';
- var messageIsMultipart = (utils.typeName(message) == "Array");
- var args = messageIsMultipart ? message : [message];
-
- if (utils.typeName(message) == 'ArrayBuffer') {
- if (forceAsync) {
- console.warn('Cannot echo ArrayBuffer with forced async, falling back to sync.');
- }
- action += 'ArrayBuffer';
- } else if (messageIsMultipart) {
- if (forceAsync) {
- console.warn('Cannot echo MultiPart Array with forced async, falling back to sync.');
- }
- action += 'MultiPart';
- } else if (forceAsync) {
- action += 'Async';
+ id: 'ios',
+ bootstrap: function() {
+ require('cordova/channel').onNativeReady.fire();
}
-
- exec(successCallback, errorCallback, "Echo", action, args);
};
@@ -1242,7 +1252,6 @@ module.exports = function(successCallback, errorCallback, message, forceAsync) {
// file: lib/common/pluginloader.js
define("cordova/pluginloader", function(require, exports, module) {
-var channel = require('cordova/channel');
var modulemapper = require('cordova/modulemapper');
// Helper function to inject a <script> tag.
@@ -1255,7 +1264,7 @@ function injectScript(url, onload, onerror) {
document.head.appendChild(script);
}
-function onScriptLoadingComplete(moduleList) {
+function onScriptLoadingComplete(moduleList, finishPluginLoading) {
// Loop through all the plugins and then through their clobbers and merges.
for (var i = 0, module; module = moduleList[i]; i++) {
if (module) {
@@ -1288,18 +1297,11 @@ function onScriptLoadingComplete(moduleList) {
finishPluginLoading();
}
-// Called when:
-// * There are plugins defined and all plugins are finished loading.
-// * There are no plugins to load.
-function finishPluginLoading() {
- channel.onPluginsReady.fire();
-}
-
// Handler for the cordova_plugins.js content.
// See plugman's plugin_loader.js for the details of this object.
// This function is only called if the really is a plugins array that isn't empty.
// Otherwise the onerror response handler will just call finishPluginLoading().
-function handlePluginsObject(path, moduleList) {
+function handlePluginsObject(path, moduleList, finishPluginLoading) {
// Now inject the scripts.
var scriptCounter = moduleList.length;
@@ -1309,7 +1311,7 @@ function handlePluginsObject(path, moduleList) {
}
function scriptLoadedCallback() {
if (!--scriptCounter) {
- onScriptLoadingComplete(moduleList);
+ onScriptLoadingComplete(moduleList, finishPluginLoading);
}
}
@@ -1318,17 +1320,17 @@ function handlePluginsObject(path, moduleList) {
}
}
-function injectPluginScript(pathPrefix) {
+function injectPluginScript(pathPrefix, finishPluginLoading) {
injectScript(pathPrefix + 'cordova_plugins.js', function(){
try {
var moduleList = require("cordova/plugin_list");
- handlePluginsObject(pathPrefix, moduleList);
+ handlePluginsObject(pathPrefix, moduleList, finishPluginLoading);
} catch (e) {
// Error loading cordova_plugins.js, file not found or something
// this is an acceptable error, pre-3.0.0, so we just move on.
finishPluginLoading();
}
- },finishPluginLoading); // also, add script load error handler for file not found
+ }, finishPluginLoading); // also, add script load error handler for file not found
}
function findCordovaPath() {
@@ -1348,28 +1350,32 @@ function findCordovaPath() {
// Tries to load all plugins' js-modules.
// This is an async process, but onDeviceReady is blocked on onPluginsReady.
// onPluginsReady is fired when there are no plugins to load, or they are all done.
-exports.load = function() {
+exports.load = function(callback) {
var pathPrefix = findCordovaPath();
if (pathPrefix === null) {
console.log('Could not find cordova.js script tag. Plugin loading may fail.');
pathPrefix = '';
}
- injectPluginScript(pathPrefix);
+ injectPluginScript(pathPrefix, callback);
};
});
-// file: lib/common/symbols.js
-define("cordova/symbols", function(require, exports, module) {
+// file: lib/common/urlutil.js
+define("cordova/urlutil", function(require, exports, module) {
-var modulemapper = require('cordova/modulemapper');
+var urlutil = exports;
+var anchorEl = document.createElement('a');
-// Use merges here in case others symbols files depend on this running first,
-// but fail to declare the dependency with a require().
-modulemapper.merges('cordova', 'cordova');
-modulemapper.clobbers('cordova/exec', 'cordova.exec');
-modulemapper.clobbers('cordova/exec', 'Cordova.exec');
+/**
+ * For already absolute URLs, returns what is passed in.
+ * For relative URLs, converts them to absolute ones.
+ */
+urlutil.makeAbsolute = function(url) {
+ anchorEl.href = url;
+ return anchorEl.href;
+};
});
@@ -1546,91 +1552,6 @@ function UUIDcreatePart(length) {
window.cordova = require('cordova');
// file: lib/scripts/bootstrap.js
-(function (context) {
- if (context._cordovaJsLoaded) {
- throw new Error('cordova.js included multiple times.');
- }
- context._cordovaJsLoaded = true;
-
- var channel = require('cordova/channel');
- var pluginloader = require('cordova/pluginloader');
-
- var platformInitChannelsArray = [channel.onNativeReady, channel.onPluginsReady];
-
- function logUnfiredChannels(arr) {
- for (var i = 0; i < arr.length; ++i) {
- if (arr[i].state != 2) {
- console.log('Channel not fired: ' + arr[i].type);
- }
- }
- }
-
- window.setTimeout(function() {
- if (channel.onDeviceReady.state != 2) {
- console.log('deviceready has not fired after 5 seconds.');
- logUnfiredChannels(platformInitChannelsArray);
- logUnfiredChannels(channel.deviceReadyChannelsArray);
- }
- }, 5000);
-
- // Replace navigator before any modules are required(), to ensure it happens as soon as possible.
- // We replace it so that properties that can't be clobbered can instead be overridden.
- function replaceNavigator(origNavigator) {
- var CordovaNavigator = function() {};
- CordovaNavigator.prototype = origNavigator;
- var newNavigator = new CordovaNavigator();
- // This work-around really only applies to new APIs that are newer than Function.bind.
- // Without it, APIs such as getGamepads() break.
- if (CordovaNavigator.bind) {
- for (var key in origNavigator) {
- if (typeof origNavigator[key] == 'function') {
- newNavigator[key] = origNavigator[key].bind(origNavigator);
- }
- }
- }
- return newNavigator;
- }
- if (context.navigator) {
- context.navigator = replaceNavigator(context.navigator);
- }
-
- // _nativeReady is global variable that the native side can set
- // to signify that the native code is ready. It is a global since
- // it may be called before any cordova JS is ready.
- if (window._nativeReady) {
- channel.onNativeReady.fire();
- }
-
- /**
- * Create all cordova objects once native side is ready.
- */
- channel.join(function() {
- // Call the platform-specific initialization
- require('cordova/platform').initialize();
-
- // Fire event to notify that all objects are created
- channel.onCordovaReady.fire();
-
- // Fire onDeviceReady event once page has fully loaded, all
- // constructors have run and cordova info has been received from native
- // side.
- // This join call is deliberately made after platform.initialize() in
- // order that plugins may manipulate channel.deviceReadyChannelsArray
- // if necessary.
- channel.join(function() {
- require('cordova').fireDocumentEvent('deviceready');
- }, channel.deviceReadyChannelsArray);
-
- }, platformInitChannelsArray);
-
- // Don't attempt to load when running unit tests.
- if (typeof XMLHttpRequest != 'undefined') {
- pluginloader.load();
- }
-}(window));
-
-// file: lib/scripts/bootstrap-ios.js
-
-require('cordova/channel').onNativeReady.fire();
+require('cordova/init');
})();
\ No newline at end of file
[2/2] ios commit: Updated internal version to 3.1.0
Posted by sh...@apache.org.
Updated internal version to 3.1.0
Project: http://git-wip-us.apache.org/repos/asf/cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-ios/commit/6431b39b
Tree: http://git-wip-us.apache.org/repos/asf/cordova-ios/tree/6431b39b
Diff: http://git-wip-us.apache.org/repos/asf/cordova-ios/diff/6431b39b
Branch: refs/heads/master
Commit: 6431b39b1aedfdca21979ae5d52d3f53c79d73a0
Parents: f5d3c5a
Author: Shazron Abdullah <sh...@apache.org>
Authored: Thu Sep 19 17:37:21 2013 -0700
Committer: Shazron Abdullah <sh...@apache.org>
Committed: Thu Sep 19 17:37:21 2013 -0700
----------------------------------------------------------------------
CordovaLib/Classes/CDVAvailability.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cordova-ios/blob/6431b39b/CordovaLib/Classes/CDVAvailability.h
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVAvailability.h b/CordovaLib/Classes/CDVAvailability.h
index 3ca0bd7..4936e81 100644
--- a/CordovaLib/Classes/CDVAvailability.h
+++ b/CordovaLib/Classes/CDVAvailability.h
@@ -44,6 +44,7 @@
#define __CORDOVA_2_8_0 20800
#define __CORDOVA_2_9_0 20900
#define __CORDOVA_3_0_0 30000
+#define __CORDOVA_3_1_0 30100
#define __CORDOVA_NA 99999 /* not available */
/*
@@ -54,7 +55,7 @@
#endif
*/
#ifndef CORDOVA_VERSION_MIN_REQUIRED
- #define CORDOVA_VERSION_MIN_REQUIRED __CORDOVA_3_0_0
+ #define CORDOVA_VERSION_MIN_REQUIRED __CORDOVA_3_1_0
#endif
/*