You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ti...@apache.org on 2013/09/23 23:01:18 UTC

android commit: [CB-4872] - added android version scripts

Updated Branches:
  refs/heads/sdkCheck [created] ca877cf3d


[CB-4872] - added android version scripts


Project: http://git-wip-us.apache.org/repos/asf/cordova-android/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-android/commit/ca877cf3
Tree: http://git-wip-us.apache.org/repos/asf/cordova-android/tree/ca877cf3
Diff: http://git-wip-us.apache.org/repos/asf/cordova-android/diff/ca877cf3

Branch: refs/heads/sdkCheck
Commit: ca877cf3d28e20c4dff04bf46a8704405d5210c2
Parents: 1d1cdb5
Author: Tim Kim <ti...@adobe.com>
Authored: Mon Sep 23 14:01:03 2013 -0700
Committer: Tim Kim <ti...@adobe.com>
Committed: Mon Sep 23 14:01:03 2013 -0700

----------------------------------------------------------------------
 bin/android_sdk_version        | 25 +++++++++++++++++
 bin/android_sdk_version.bat    | 26 ++++++++++++++++++
 bin/lib/android_sdk_version.js | 53 +++++++++++++++++++++++++++++++++++++
 3 files changed, 104 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ca877cf3/bin/android_sdk_version
----------------------------------------------------------------------
diff --git a/bin/android_sdk_version b/bin/android_sdk_version
new file mode 100755
index 0000000..e4c8bb5
--- /dev/null
+++ b/bin/android_sdk_version
@@ -0,0 +1,25 @@
+#!/usr/bin/env node
+
+/*
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+*/
+
+var android_sdk_version = require('./lib/android_sdk_version');
+
+android_sdk_version.run();
+

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ca877cf3/bin/android_sdk_version.bat
----------------------------------------------------------------------
diff --git a/bin/android_sdk_version.bat b/bin/android_sdk_version.bat
new file mode 100644
index 0000000..33a1fa2
--- /dev/null
+++ b/bin/android_sdk_version.bat
@@ -0,0 +1,26 @@
+:: Licensed to the Apache Software Foundation (ASF) under one
+:: or more contributor license agreements.  See the NOTICE file
+:: distributed with this work for additional information
+:: regarding copyright ownership.  The ASF licenses this file
+:: to you under the Apache License, Version 2.0 (the
+:: "License"); you may not use this file except in compliance
+:: with the License.  You may obtain a copy of the License at
+:: 
+:: http://www.apache.org/licenses/LICENSE-2.0
+:: 
+:: Unless required by applicable law or agreed to in writing,
+:: software distributed under the License is distributed on an
+:: "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+:: KIND, either express or implied.  See the License for the
+:: specific language governing permissions and limitations
+:: under the License.
+
+@ECHO OFF
+SET script_path="%~dp0android_sdk_version"
+IF EXIST %script_path% (
+        node "%script_path%" %*
+) ELSE (
+    ECHO.
+    ECHO ERROR: Could not find 'android_sdk_version' script in 'bin' folder, aborting...>&2
+    EXIT /B 1
+)

http://git-wip-us.apache.org/repos/asf/cordova-android/blob/ca877cf3/bin/lib/android_sdk_version.js
----------------------------------------------------------------------
diff --git a/bin/lib/android_sdk_version.js b/bin/lib/android_sdk_version.js
new file mode 100755
index 0000000..e8a1b1b
--- /dev/null
+++ b/bin/lib/android_sdk_version.js
@@ -0,0 +1,53 @@
+#!/usr/bin/env node
+
+/*
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+*/
+
+var shell = require('shelljs');
+
+get_highest_sdk = function(results){
+    var reg = /\d+/;
+    var apiLevels = [];
+    for(var i=0;i<results.length;i++){
+        apiLevels[i] = parseInt(results[i].match(reg)[0]);
+    }
+    apiLevels.sort(function(a,b){return b-a});
+    console.log(apiLevels[0]);
+}
+
+get_sdks = function() {
+    var targets = shell.exec('android list targets', {silent:true, async:false});
+
+    if(targets.code > 0 && targets.output.match(/command\snot\sfound/)) {
+        return new Error('The command \"android\" failed. Make sure you have the latest Android SDK installed, and the \"android\" command (inside the tools/ folder) is added to your path.');
+    } else {
+        var reg = /android-\d+/gi;
+        var results = targets.output.match(reg);
+        if(results.length===0){
+            return new Error('No android sdks installed.');
+        }else{
+            get_highest_sdk(results);
+        }
+    }
+}
+
+module.exports.run = function() {
+    get_sdks();
+}
+