adding bash helper scripts
Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/commit/c86b618a Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/tree/c86b618a Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/diff/c86b618a Branch: refs/heads/master Commit: c86b618aaaa2575eb47565127d7ebb7153daee82 Parents: 0a4d218 Author: Anis Kadri <[email protected]> Authored: Fri Jun 15 18:35:34 2012 -0700 Committer: Anis Kadri <[email protected]> Committed: Fri Jun 15 18:35:34 2012 -0700 ---------------------------------------------------------------------- bin/templates/cordova/BOOM | 7 +++ bin/templates/cordova/appinfo.jar | Bin 0 -> 1527 bytes bin/templates/cordova/clean | 7 +++ bin/templates/cordova/cordova | 91 ++++++++++++++++++++++++++++++++ bin/templates/cordova/debug | 7 +++ bin/templates/cordova/emulate | 7 +++ bin/templates/cordova/log | 7 +++ 7 files changed, 126 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/BOOM ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/BOOM b/bin/templates/cordova/BOOM new file mode 100644 index 0000000..37c623c --- /dev/null +++ b/bin/templates/cordova/BOOM @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +CORDOVA_PATH=$( cd "$( dirname "$0" )" && pwd ) + +bash $CORDOVA_PATH/cordova BOOM http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/appinfo.jar ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/appinfo.jar b/bin/templates/cordova/appinfo.jar new file mode 100644 index 0000000..4116f48 Binary files /dev/null and b/bin/templates/cordova/appinfo.jar differ http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/clean ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/clean b/bin/templates/cordova/clean new file mode 100644 index 0000000..daa8442 --- /dev/null +++ b/bin/templates/cordova/clean @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +CORDOVA_PATH=$( cd "$( dirname "$0" )" && pwd ) + +bash $CORDOVA_PATH/cordova clean http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/cordova ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/cordova b/bin/templates/cordova/cordova new file mode 100644 index 0000000..0f3e452 --- /dev/null +++ b/bin/templates/cordova/cordova @@ -0,0 +1,91 @@ +#!/bin/bash + +set -e + +PROJECT_PATH=$( cd "$( dirname "$0" )/.." && pwd ) + +function check_devices { + local devices=`adb devices | awk '/List of devices attached/ { while(getline > 0) { print }}'` + if [ -z "$devices" ] ; then + echo "1" + else + echo "0" + fi +} + +function emulate { + declare -a avd_list=($(android list avd | grep "Name:" | cut -f 2 -d ":" | xargs)) + # we need to start adb-server + adb start-server 1>/dev/null + + # Do not launch an emulator if there is already one running or if a device is attached + if [ $(check_devices) == 0 ] ; then + echo "Device attached or emulator already running" + return + fi + + local avd_id="1000" #FIXME: hopefully user does not have 1000 AVDs + # User has no AVDs + if [ ${#avd_list[@]} == 0 ] + then + echo "You don't have any Android Virtual Devices. Please create at least one AVD." + echo "android" + fi + # User has only one AVD + if [ ${#avd_list[@]} == 1 ] + then + emulator -cpu-delay 0 -no-boot-anim -cache /tmp/cache -avd ${avd_list[0]} 1> /dev/null 2>&1 & + # User has more than 1 AVD + elif [ ${#avd_list[@]} -gt 1 ] + then + while [ -z ${avd_list[$avd_id]} ] + do + echo "Choose from one of the following Android Virtual Devices [0 to $((${#avd_list[@]}-1))]:" + for(( i = 0 ; i < ${#avd_list[@]} ; i++ )) + do + echo "$i) ${avd_list[$i]}" + done + echo -n "> " + read avd_id + done + emulator -cpu-delay 0 -no-boot-anim -cache /tmp/cache -avd ${avd_list[$avd_id]} 1> /dev/null 2>&1 & + fi + +} + +function clean { + ant clean +} +# has to be used independently and not in conjuction with other commands +function log { + adb logcat +} + +function debug_install { + ant debug install +} + +function debug { + ant debug +} + +function launch { + local launch_str=$(java -jar $PROJECT_PATH/cordova/appinfo.jar $PROJECT_PATH/AndroidManifest.xml) + adb shell am start -n $launch_str +} + +function BOOM { + clean + if [ $(check_devices) == 0 ] ; then + debug_install && launch + return + else + debug + echo "##################################################################" + echo "# Plug in your device or launch an emulator with cordova/emulate #" + echo "##################################################################" + fi +} + +# TODO parse arguments +(cd $PROJECT_PATH && $1) http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/debug ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/debug b/bin/templates/cordova/debug new file mode 100644 index 0000000..5d63a39 --- /dev/null +++ b/bin/templates/cordova/debug @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +CORDOVA_PATH=$( cd "$( dirname "$0" )" && pwd ) + +bash $CORDOVA_PATH/cordova debug http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/emulate ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/emulate b/bin/templates/cordova/emulate new file mode 100644 index 0000000..6c4fab2 --- /dev/null +++ b/bin/templates/cordova/emulate @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +CORDOVA_PATH=$( cd "$( dirname "$0" )" && pwd ) + +bash $CORDOVA_PATH/cordova emulate http://git-wip-us.apache.org/repos/asf/incubator-cordova-android/blob/c86b618a/bin/templates/cordova/log ---------------------------------------------------------------------- diff --git a/bin/templates/cordova/log b/bin/templates/cordova/log new file mode 100644 index 0000000..ab3622e --- /dev/null +++ b/bin/templates/cordova/log @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +PROJECT_PATH=$( cd "$( dirname "$0" )/.." && pwd ) + +bash $PROJECT_PATH/cordova/cordova log
