From 2f7ffa3636b6898d3f419c8b8a2aeb7b39860248 Mon Sep 17 00:00:00 2001 From: Andrew Grieve Date: Thu, 11 Sep 2014 15:36:35 -0400 Subject: [PATCH] CB-7511 Auto-detect android sdk when using stand-alone sdk installer --- bin/lib/check_reqs.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/bin/lib/check_reqs.js b/bin/lib/check_reqs.js index 00137ff0..edfa2733 100644 --- a/bin/lib/check_reqs.js +++ b/bin/lib/check_reqs.js @@ -143,17 +143,29 @@ module.exports.check_android = function() { var adbInPath = !!forgivingWhichSync('adb'); var hasAndroidHome = !!process.env['ANDROID_HOME'] && fs.existsSync(process.env['ANDROID_HOME']); function maybeSetAndroidHome(value) { - if (fs.existsSync(value)) { + if (!hasAndroidHome && fs.existsSync(value)) { hasAndroidHome = true; process.env['ANDROID_HOME'] = value; } } if (!hasAndroidHome && !androidCmdPath) { if (isWindows) { + // Android Studio installer. maybeSetAndroidHome(path.join(process.env['LOCALAPPDATA'], 'Android', 'android-studio', 'sdk')); maybeSetAndroidHome(path.join(process.env['ProgramFiles'], 'Android', 'android-studio', 'sdk')); + // Stand-alone installer. + maybeSetAndroidHome(path.join(process.env['LOCALAPPDATA'], 'Android', 'android-sdk')); + maybeSetAndroidHome(path.join(process.env['ProgramFiles'], 'Android', 'android-sdk')); } else if (process.platform == 'darwin') { maybeSetAndroidHome('/Applications/Android Studio.app/sdk'); + // Stand-alone zip file that user might think to put under /Applications + maybeSetAndroidHome('/Applications/android-sdk-macosx'); + maybeSetAndroidHome('/Applications/android-sdk'); + } + if (process.env['HOME']) { + // or their HOME directory. + maybeSetAndroidHome(path.join(process.env['HOME'], 'android-sdk-macosx')); + maybeSetAndroidHome(path.join(process.env['HOME'], 'android-sdk')); } } if (hasAndroidHome && !androidCmdPath) {