mirror of
https://github.com/apache/cordova-android.git
synced 2025-02-26 03:53:09 +08:00
Moved around the scripts so that you can create a self contained project that you can run debug, emulate and log from
This commit is contained in:
parent
ef8e8a3ab4
commit
75233711e3
35
bin/create
35
bin/create
@ -8,9 +8,6 @@
|
|||||||
PROJECT_PATH=${1:-"./example"}
|
PROJECT_PATH=${1:-"./example"}
|
||||||
PACKAGE=${2:-"com.phonegap.example"}
|
PACKAGE=${2:-"com.phonegap.example"}
|
||||||
ACTIVITY=${3:-"PhoneGapExample"}
|
ACTIVITY=${3:-"PhoneGapExample"}
|
||||||
PACKAGE_AS_PATH=$(echo $PACKAGE | sed 's/\./\//g')
|
|
||||||
ACTIVITY_PATH=$PROJECT_PATH/src/$PACKAGE_AS_PATH/$ACTIVITY.java
|
|
||||||
MANIFEST_PATH=$PROJECT_PATH/AndroidManifest.xml
|
|
||||||
TARGET=$(android list targets | grep 'id: ' | sed 's/id: \([0-9]\).*/\1/g' | tail -1)
|
TARGET=$(android list targets | grep 'id: ' | sed 's/id: \([0-9]\).*/\1/g' | tail -1)
|
||||||
VERSION=$(cat ./VERSION)
|
VERSION=$(cat ./VERSION)
|
||||||
|
|
||||||
@ -26,28 +23,22 @@ android update project --target $TARGET --path ./framework
|
|||||||
# compile phonegap.js and phonegap.jar
|
# compile phonegap.js and phonegap.jar
|
||||||
cd ./framework && ant jar && cd ../
|
cd ./framework && ant jar && cd ../
|
||||||
|
|
||||||
# create the project
|
# copy all the bin scripts etc in there
|
||||||
android create project --target $TARGET --path $PROJECT_PATH --package $PACKAGE --activity $ACTIVITY
|
cp -R ./bin/templates/project/ $PROJECT_PATH
|
||||||
|
|
||||||
# copy in all default project files (plugins.xml, manifest, www etc)
|
|
||||||
cp -r ./bin/templates/project $PROJECT_PATH
|
|
||||||
|
|
||||||
# copy in phonegap.js
|
# copy in phonegap.js
|
||||||
cp ./framework/assets/www/phonegap-$VERSION.js $PROJECT_PATH/assets/www/phonegap-$VERSION.js
|
cp ./framework/assets/www/phonegap-$VERSION.js $PROJECT_PATH/.phonegap/android/phonegap-$VERSION.js
|
||||||
|
|
||||||
# copy in phonegap.jar
|
# copy in phonegap.jar
|
||||||
mkdir -p $PROJECT_PATH/libs && cp ./framework/phonegap-$VERSION.jar $PROJECT_PATH/libs/phonegap-$VERSION.jar
|
cp ./framework/phonegap-$VERSION.jar $PROJECT_PATH/.phonegap/android/phonegap-$VERSION.jar
|
||||||
|
|
||||||
# copy in default activity
|
# app properties
|
||||||
cat ./bin/templates/Activity.java > $ACTIVITY_PATH
|
cat > $PROJECT_PATH/.phonegap/config <<eom
|
||||||
|
VERSION=$VERSION
|
||||||
|
PROJECT_PATH=$PROJECT_PATH
|
||||||
|
PACKAGE=$PACKAGE
|
||||||
|
ACTIVITY=$ACTIVITY
|
||||||
|
TARGET=$TARGET
|
||||||
|
eom
|
||||||
|
|
||||||
# interpolate the acivity name and package
|
(cd $PROJECT_PATH && ./bin/create)
|
||||||
find "$ACTIVITY_PATH" | xargs grep '__ACTIVITY__' -sl | xargs -L1 sed -i "" "s/__ACTIVITY__/${ACTIVITY}/g"
|
|
||||||
find "$ACTIVITY_PATH" | xargs grep '__ID__' -sl | xargs -L1 sed -i "" "s/__ID__/${PACKAGE}/g"
|
|
||||||
|
|
||||||
find "$MANIFEST_PATH" | xargs grep '__ACTIVITY__' -sl | xargs -L1 sed -i "" "s/__ACTIVITY__/${ACTIVITY}/g"
|
|
||||||
find "$MANIFEST_PATH" | xargs grep '__PACKAGE__' -sl | xargs -L1 sed -i "" "s/__PACKAGE__/${PACKAGE}/g"
|
|
||||||
|
|
||||||
# leave the id for launching
|
|
||||||
touch $PROJECT_PATH/package-activity
|
|
||||||
echo $PACKAGE/$PACKAGE.$ACTIVITY > $PROJECT_PATH/package-activity
|
|
@ -1,4 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
|
|
||||||
ant debug install
|
|
||||||
adb shell am start -n $(cat ./package-activity)
|
|
@ -1,3 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
|
|
||||||
emulator -cpu-delay 0 -no-boot-anim -cache ./tmp/cache -avd default > /dev/null 2>&1 & # put the avd's chatty ass in the background
|
|
36
bin/templates/project/bin/create
Executable file
36
bin/templates/project/bin/create
Executable file
@ -0,0 +1,36 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
#
|
||||||
|
# create a phonegap/android project
|
||||||
|
#
|
||||||
|
# USAGE
|
||||||
|
# ./create [path package activity]
|
||||||
|
#
|
||||||
|
|
||||||
|
# load up the config
|
||||||
|
. ./.phonegap/config
|
||||||
|
|
||||||
|
PACKAGE_AS_PATH=$(echo $PACKAGE | sed 's/\./\//g')
|
||||||
|
ACTIVITY_PATH=./src/$PACKAGE_AS_PATH/$ACTIVITY.java
|
||||||
|
MANIFEST_PATH=./AndroidManifest.xml
|
||||||
|
|
||||||
|
# create the project
|
||||||
|
android create project --target $TARGET --path . --package $PACKAGE --activity $ACTIVITY
|
||||||
|
|
||||||
|
# copy all the bin scripts etc in there
|
||||||
|
cp -R ./bin/templates/project/ .
|
||||||
|
|
||||||
|
# copy in phonegap.js
|
||||||
|
cp ./.phonegap/android/phonegap-$VERSION.js ./assets/www
|
||||||
|
|
||||||
|
# copy in phonegap.jar
|
||||||
|
cp ./.phonegap/android/phonegap-$VERSION.jar ./libs
|
||||||
|
|
||||||
|
# copy in default activity
|
||||||
|
cat ./bin/templates/Activity.java > $ACTIVITY_PATH
|
||||||
|
|
||||||
|
# interpolate the acivity name and package
|
||||||
|
find "$ACTIVITY_PATH" | xargs grep '__ACTIVITY__' -sl | xargs -L1 sed -i "" "s/__ACTIVITY__/${ACTIVITY}/g"
|
||||||
|
find "$ACTIVITY_PATH" | xargs grep '__ID__' -sl | xargs -L1 sed -i "" "s/__ID__/${PACKAGE}/g"
|
||||||
|
|
||||||
|
find "$MANIFEST_PATH" | xargs grep '__ACTIVITY__' -sl | xargs -L1 sed -i "" "s/__ACTIVITY__/${ACTIVITY}/g"
|
||||||
|
find "$MANIFEST_PATH" | xargs grep '__PACKAGE__' -sl | xargs -L1 sed -i "" "s/__PACKAGE__/${PACKAGE}/g"
|
9
bin/templates/project/bin/debug
Executable file
9
bin/templates/project/bin/debug
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
. ./.phonegap/config
|
||||||
|
|
||||||
|
# if there are no devices listed then emulate
|
||||||
|
|
||||||
|
|
||||||
|
ant debug install
|
||||||
|
adb shell am start -n $PACKAGE/$PACKAGE.$ACTIVITY
|
12
bin/templates/project/bin/emulate
Executable file
12
bin/templates/project/bin/emulate
Executable file
@ -0,0 +1,12 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
#Available Android Virtual Devices:
|
||||||
|
# Name: default
|
||||||
|
# Path: /Users/davejohnson/.android/avd/default.avd
|
||||||
|
# Target: Android 2.2 (API level 8)
|
||||||
|
# Skin: WVGA800
|
||||||
|
# Sdcard: 100M
|
||||||
|
|
||||||
|
# get the name of the first virtual device or use command line arg or use "default"
|
||||||
|
|
||||||
|
emulator -cpu-delay 0 -no-boot-anim -cache ./tmp/cache -avd default > /dev/null 2>&1 & # put the avd's chatty ass in the background
|
3
bin/test
3
bin/test
@ -16,7 +16,6 @@ fi
|
|||||||
# kill the default app and replace it w/ mobile-spec
|
# kill the default app and replace it w/ mobile-spec
|
||||||
rm -rf ./test/assets/www
|
rm -rf ./test/assets/www
|
||||||
mv ./mobile-spec ./test/assets/www
|
mv ./mobile-spec ./test/assets/www
|
||||||
cp ./framework/assets/www/phonegap-$VERSION.js ./test/assets/www/phoengap-$VERSION.js
|
|
||||||
|
|
||||||
# build it, launch it and start logging on stdout
|
# build it, launch it and start logging on stdout
|
||||||
cd ./test && ./../bin/debug && ./../bin/log
|
cd ./test && ./bin/debug && ./bin/log
|
@ -120,7 +120,7 @@
|
|||||||
<!-- update project files to reference phonegap-x.x.x.min.js -->
|
<!-- update project files to reference phonegap-x.x.x.min.js -->
|
||||||
<replaceregexp match="phonegap(.*)\.js" replace="phonegap-${version}.js" byline="true">
|
<replaceregexp match="phonegap(.*)\.js" replace="phonegap-${version}.js" byline="true">
|
||||||
<fileset file="assets/www/index.html" />
|
<fileset file="assets/www/index.html" />
|
||||||
<fileset file="../bin/templates/project/assets/www/index.html" />
|
<!-- <fileset file="../bin/templates/project/assets/www/index.html" /> -->
|
||||||
</replaceregexp>
|
</replaceregexp>
|
||||||
<replaceregexp match="phonegapVersion = [\u0022].*[\u0022];" replace="phonegapVersion = ${dblQuote}${version}${dblQuote};" byline="true">
|
<replaceregexp match="phonegapVersion = [\u0022].*[\u0022];" replace="phonegapVersion = ${dblQuote}${version}${dblQuote};" byline="true">
|
||||||
<fileset file="src/com/phonegap/Device.java" />
|
<fileset file="src/com/phonegap/Device.java" />
|
||||||
|
Loading…
Reference in New Issue
Block a user