Fixed ChangeAppsettings script

This commit is contained in:
pelya
2010-05-07 13:25:25 +03:00
parent 74f436776c
commit 2f484609dd
3 changed files with 58 additions and 20 deletions

View File

@@ -1,18 +1,39 @@
#!/bin/sh
. ./AppSettings.cfg
cat /dev/null > AppSettings.cfg
var=""
echo -n "\nSpecify application name (e.x. My Application) ($AppName): "
read AppName
echo -n "\nSpecify reversed site name of application (e.x. com.mysite.myapp) ($AppFullName): "
read AppFullName
echo -n "\nSpecify screen orientation: (v)ertical or (h)orizontal ($ScreenOrientation): "
read ScreenOrientation
echo -n "\nSpecify URL to download application data in zip archive ($AppDataDownloadUrl): "
read AppDataDownloadUrl
echo -n "\nSpecify if application data should be saved to SD Card (y) or (n),\nsay (y) if app data is bigger than 5 megabytes ($DownloadToSdcard): "
read DownloadToSdcard
read var
if [ -n "$var" ] ; then
AppName="$var"
fi
echo -n "\nSpecify reversed site name of application (e.x. com.mysite.myapp) ($AppFullName): "
read var
if [ -n "$var" ] ; then
AppFullName="$var"
fi
echo -n "\nSpecify screen orientation: (v)ertical or (h)orizontal ($ScreenOrientation): "
read var
if [ -n "$var" ] ; then
ScreenOrientation="$var"
fi
echo -n "\nSpecify URL to download application data in zip archive ($AppDataDownloadUrl): "
read var
if [ -n "$var" ] ; then
AppDataDownloadUrl="$var"
fi
echo -n "\nSpecify if application data should be saved to SD Card (y) or (n),\nsay (y) if app data is bigger than 5 megabytes ($DownloadToSdcard): "
read var
if [ -n "$var" ] ; then
DownloadToSdcard="$var"
fi
cat /dev/null > AppSettings.cfg
echo AppName=\"$AppName\" >> AppSettings.cfg
echo AppFullName=$AppFullName >> AppSettings.cfg
echo ScreenOrientation=$ScreenOrientation >> AppSettings.cfg
@@ -31,28 +52,41 @@ ScreenOrientation1=portrait
if [ "$ScreenOrientation" = "h" ] ; then
ScreenOrientation1=landscape
fi
AppDataDownloadUrl1="`echo $AppDataDownloadUrl | sed 's/[&]/%26/g'`"
echo Patching project/AndroidManifest.xml
cat project/AndroidManifest.xml | \
sed "s/package=.*/package=\"$AppFullName\"/" | \
sed "s/android:screenOrientation=.*/android:screenOrientation=\"$ScreenOrientation1\"/" > \
project/AndroidManifest.xml.1
mv -f project/AndroidManifest.xml.1 project/AndroidManifest.xml
echo Patching project/src/DemoActivity.java
cat project/src/DemoActivity.java | \
sed "s/public static String ApplicationName = .*/public static String ApplicationName = \"$AppShortName\";" | \
sed "s^public static String DataDownloadUrl = .*^public static String DataDownloadUrl = \"$AppDataDownloadUrl\";^" | \
sed "s/public static boolean DownloadToSdcard = .*/public static boolean DownloadToSdcard = $DownloadToSdcard1;" > \
sed "s/package .*;/package $AppFullName;/" | \
sed "s/public static String ApplicationName = .*;/public static String ApplicationName = \"$AppShortName\";/" | \
sed "s^public static String DataDownloadUrl = \".*\";^public static String DataDownloadUrl = \"$AppDataDownloadUrl1\";^" | \
sed "s/public static boolean DownloadToSdcard = .*;/public static boolean DownloadToSdcard = $DownloadToSdcard1;/" > \
project/src/DemoActivity.java.1
mv -f project/src/DemoActivity.java.1 project/src/DemoActivity.java
echo Patching project/jni/Android.mk
cat project/jni/Android.mk | \
sed "s/SDL_JAVA_PACKAGE_PATH := .*/SDL_JAVA_PACKAGE_PATH := $AppFullNameUnderscored/" | \
sed "s^SDL_CURDIR_PATH := .*^SDL_CURDIR_PATH := $DataPath^" > \
project/jni/Android.mk.1
mv -f project/jni/Android.mk.1 project/jni/Android.mk
echo Patching project/res/values/strings.xml
cat project/res/values/strings.xml | \
sed "s/<string name=\"app_name\">.*/<string name=\"app_name\">$AppName</string>" > \
sed "s^[<]string name=\"app_name\"[>].*^<string name=\"app_name\">$AppName</string>^" > \
project/res/values/strings.xml.1
mv -f project/res/values/strings.xml.1 project/res/values/strings.xml
# Force rebuild of C-Java bindings
touch project/jni/sdl/include/SDL_main.h
touch project/jni/sdl/src/video/android/*.c
touch project/jni/sdl/src/audio/android/*.c
rm project/libs/armeabi/libapplication.so project/libs/armeabi/libsdl.so
echo Done

View File

@@ -1,3 +1,4 @@
// This string is autogenerated by ChangeAppSettings.sh, do not change spaces amount
package de.schwardtnet.alienblaster;
import javax.microedition.khronos.egl.EGLConfig;
@@ -29,16 +30,19 @@ import java.io.*;
import java.nio.ByteBuffer;
// TODO: export vibrator to SDL - interface is available in SDL 1.3
class Globals {
// This string is autogenerated by ChangeAppSettings.sh, do not change spaces amount
public static String ApplicationName = "AlienBlaster";
// Should be zip file
public static String DataDownloadUrl = "http://sites.google.com/site/xpelyax/Home/alienblaster110_data.zip?attredirects=0&d=1";
// This string is autogenerated by ChangeAppSettings.sh, do not change spaces amount
public static String DataDownloadUrl = "http://sites.google.com/site/xpelyax/Home/alienblaster110_data.zip?attredirects=0%26d=1"; // This string is autogenerated by ChangeAppSettings.sh, do not change spaces amount
// Set DownloadToSdcard to true if your app data is bigger than 5 megabytes.
// It will download app data to /sdcard/alienblaster then,
// otherwise it will download it to /data/data/de.schwardtnet.alienblaster/files -
// set this dir in jni/Android.mk in SDL_CURDIR_PATH
// This string is autogenerated by ChangeAppSettings.sh, do not change spaces amount
public static boolean DownloadToSdcard = false;
}

View File

@@ -30,9 +30,8 @@ it will stay in memory until you reboot device (actually it won't stay in memory
To exit correctly press Menu key - it's redirected to Escape.
When porting you own app, first of all ensure that your application supports
one of 320x200, 320x240 or 320x480 display resolutions and 16 bits per pixel
(320x480 is native resolution for HTC devices, if other vendors will produce Android phones it may differ).
You may try to use 640x480, but it will be 2x-shrinked, and also it's very slow.
one of 320x200, 320x240 or 480x320 display resolutions and 16 bits per pixel
(480x320 is native resolution for G1, Supersonic has 800x480).
To compile your own app, put your app sources into project/jni/application dir (remove Alien Blaster first),
and launch script ChangeAppSettings.sh - it will put the name of your app in several places in sources.
@@ -74,3 +73,4 @@ and configure other actions like accelerometer tilt as keypresses.
6. Progress bar for data downloader.
7. Export phone vibrator to SDL - interface is available in SDL 1.3