diff --git a/bin/lib/check_reqs.js b/bin/lib/check_reqs.js
index 358c73f4..a7410e99 100644
--- a/bin/lib/check_reqs.js
+++ b/bin/lib/check_reqs.js
@@ -110,10 +110,13 @@ module.exports.check_java = function() {
}
} else if (isWindows) {
// Try to auto-detect java in the default install paths.
+ var oldSilent = shelljs.config.silent;
+ shelljs.config.silent = true;
var firstJdkDir =
shelljs.ls(process.env['ProgramFiles'] + '\\java\\jdk*')[0] ||
shelljs.ls('C:\\Program Files\\java\\jdk*')[0] ||
shelljs.ls('C:\\Program Files (x86)\\java\\jdk*')[0];
+ shelljs.config.silent = oldSilent;
if (firstJdkDir) {
// shelljs always uses / in paths.
firstJdkDir = firstJdkDir.replace(/\//g, path.sep);
@@ -195,7 +198,7 @@ module.exports.check_android = function() {
};
module.exports.getAbsoluteAndroidCmd = function() {
- return forgivingWhichSync('android').replace(/([ \\])/g, '\\$1');
+ return forgivingWhichSync('android').replace(/(\s)/g, '\\$1');
};
module.exports.check_android_target = function(valid_target) {
@@ -209,9 +212,12 @@ module.exports.check_android_target = function(valid_target) {
.then(function(output) {
if (output.split('\n').indexOf(valid_target) == -1) {
var androidCmd = module.exports.getAbsoluteAndroidCmd();
- throw new Error('Please install Android target: "' + valid_target + '".\n' +
+ throw new Error('Please install Android target: "' + valid_target + '".\n\n' +
'Hint: Open the SDK manager by running: ' + androidCmd + '\n' +
- 'Or install directly via: ' + androidCmd + ' update sdk --no-ui --all --filter "' + valid_target + '"');
+ 'You will require:\n' +
+ '1. "SDK Platform" for ' + valid_target + '\n' +
+ '2. "Android SDK Platform-tools (latest)\n' +
+ '3. "Android SDK Build-tools" (latest)');
}
});
};
diff --git a/bin/templates/cordova/lib/build.js b/bin/templates/cordova/lib/build.js
index df2448c0..585b7af6 100644
--- a/bin/templates/cordova/lib/build.js
+++ b/bin/templates/cordova/lib/build.js
@@ -236,7 +236,7 @@ var builders = {
// Find the recently-generated output APK files
// Gradle can generate multiple output files; return all of them.
getOutputFiles: function(build_type) {
- var binDir = path.join(ROOT, 'build', 'apk');
+ var binDir = path.join(ROOT, 'build', 'outputs', 'apk');
var candidates = find_files(binDir, function(candidate) {
// Need to choose between release and debug .apk.
if (build_type === 'debug') {
diff --git a/bin/templates/project/AndroidManifest.xml b/bin/templates/project/AndroidManifest.xml
index 01840463..b3b499fe 100644
--- a/bin/templates/project/AndroidManifest.xml
+++ b/bin/templates/project/AndroidManifest.xml
@@ -33,7 +33,7 @@
+ android:hardwareAccelerated="true" android:supportsRtl="true">
+ def props = new Properties()
+ props.load(reader)
+ signingConfig.keyAlias = ensureValueExists(propsFilePath, props, 'keyAlias')
+ signingConfig.keyPassword = ensureValueExists(propsFilePath, props, 'keyPassword')
+ signingConfig.storeFile = RelativePath.parse(true, ensureValueExists(propsFilePath, props, 'storeFile')).getFile(propsFile.getParentFile())
+ signingConfig.storePassword = ensureValueExists(propsFilePath, props, 'storePassword')
+ }
+}
+
+
diff --git a/bin/templates/project/cordova.gradle b/bin/templates/project/cordova.gradle
index 6c7d0ab3..ba73c93e 100644
--- a/bin/templates/project/cordova.gradle
+++ b/bin/templates/project/cordova.gradle
@@ -116,5 +116,5 @@ String getAndroidSdkDir() {
}
cordovaSdkVersion = getProjectTarget("android-19")
-cordovaBuildToolsVersion = latestBuildToolsAvailable("19.0.0")
+cordovaBuildToolsVersion = latestBuildToolsAvailable("19.1.0")
diff --git a/framework/build.gradle b/framework/build.gradle
index 59e1ae75..6ca284d3 100644
--- a/framework/build.gradle
+++ b/framework/build.gradle
@@ -25,7 +25,12 @@ buildscript {
}
dependencies {
- classpath 'com.android.tools.build:gradle:0.10.+'
+ // This should be updated with each cordova-android release.
+ // It can affect things like where the .apk is generated.
+ // It also dictates what the minimum android build-tools version
+ // that you need (Set in bin/templates/project/cordova.gradle).
+ // Be sure to also update the value in bin/templates/project.
+ classpath 'com.android.tools.build:gradle:0.12.+'
}
}