diff options
Diffstat (limited to 'Android/cordova/run')
-rwxr-xr-x | Android/cordova/run | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/Android/cordova/run b/Android/cordova/run new file mode 100755 index 0000000..4772058 --- /dev/null +++ b/Android/cordova/run @@ -0,0 +1,81 @@ +#!/bin/bash +# 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. + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +PROJECT_PATH=$( cd "$DIR/.." && pwd ) + +function run_on_device_or_emulator { + devices=`$DIR/lib/list-devices` + if [ $? = 0 ]; then + $DIR/lib/install-device + else + run_on_emulator + fi +} + +function run_on_emulator { + emulators=`$DIR/lib/list-started-emulators` + if [ $? = 0 ] ; then + $DIR/lib/install-emulator + else + images=`$DIR/lib/list-emulator-images` + if [ $? = 0 ] ; then + $DIR/lib/start-emulator + $DIR/lib/install-emulator + else + echo "No devices/emulators started nor images available to start. How are we supposed to do this, then?" + exit 2 + fi + fi +} + + + +if [[ "$#" -eq 2 ]] ; then + # TODO: the order of arguments here may be reversed from the assumption below + $DIR/build $2 + if [[ $1 == "--device" ]] ; then + $DIR/lib/install-device + elif [[ $1 == "--emulator" ]] ; then + run_on_emulator + elif [[ $1 =~ "--target=" ]]; then + $DIR/lib/install-device $1 + else + echo "Error : '$1' is not recognized as an install option" + fi +elif [[ "$#" -eq 1 ]] ; then + if [[ $1 == "--debug" || $1 == "--release" || $1 == "--nobuild" ]] ; then + $DIR/build $1 + run_on_device_or_emulator + elif [[ $1 == "--device" ]] ; then + $DIR/build + $DIR/lib/install-device + elif [[ $1 == "--emulator" ]] ; then + $DIR/build + run_on_emulator + elif [[ $1 =~ "--target=" ]]; then + $DIR/build + $DIR/lib/install-device $1 + else + echo "Error : '$1' is not recognized as an install option" + fi +else + echo "Warning : [ --device | --emulate | --target=<targetID> ] not specified, using defaults." + $DIR/build + run_on_device_or_emulator +fi |