【发布时间】:2014-04-27 05:13:18
【问题描述】:
我创建了一个脚本,它首先检查 android 版本,然后将相应的文件安装到系统中(因为每个 android 版本的文件都不相同)
这是脚本
#!/system/bin/sh
VER=$(echo $(getprop ro.build.version.release))
LIB=/system/lib/libncurses.so
XBINS=/system/xbin/sqlite3
XBINO=/system/xbin/openvpm
XBINZ=/system/xbin/zipalign
LIBD=/system/lib
XBIND=/system/xbin
mount -o rw,remount /system
case $VER in
"2.3"*)
cp tmp/binbox/2.3.*/lib/libncurses.so "$LIBD"
cp tmp/binbox/2.3.*/xbin/sqlite3 "$XBIND"
cp tmp/binbox/2.3.*/xbin/openvpm "$XBIND"
cp tmp/binbox/2.3.*/xbin/zipalign "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBINS"
chown 0.0 "$XBINS"
chmod 6755 "$XBINO"
chown 0.0 "$XBINO"
chmod 6755 "$XBINZ"
chown 0.0 "$XBINZ"
;;
"4.0"*)
cp /tmp/binbox/4.0.*/lib/libncurses.so "$LIBD"
cp /tmp/binbox/4.0.*/xbin/sqlite3 "$XBIND"
cp tmp/binbox/4.0.*/xbin/openvpm "$XBIND"
cp tmp/binbox/4.0.*/xbin/zipalign "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBINS"
chown 0.0 "$XBINS"
chmod 6755 "$XBINO"
chown 0.0 "$XBINO"
chmod 6755 "$XBINZ"
chown 0.0 "$XBINZ"
;;
"4.1"*)
cp /tmp/binbox/4.1.*/lib/libncurses.so "$LIBD"
cp /tmp/binbox/4.1.*/xbin/sqlite3 "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBIN"
chown 0.0 "$XBIN"
;;
"4.2"*)
cp /tmp/binbox/4.2.*/lib/libncurses.so "$LIBD"
cp /tmp/binbox/4.2.*/xbin/sqlite3 "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBIN"
chown 0.0 "$XBIN"
;;
"4.3"*)
cp /tmp/binbox/4.3.*/lib/libncurses.so "$LIBD"
cp /tmp/binbox/4.3.*/xbin/sqlite3 "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBIN"
chown 0.0 "$XBIN"
;;
"4.4"*)
cp /tmp/binbox/4.4.*/lib/libncurses.so "$LIBD
cp /tmp/binbox/4.4.*/xbin/sqlite3 "$XBIND"
chmod 644 "$LIB"
chown 0.0 "$LIB"
chmod 6755 "$XBIN"
chown 0.0 "$XBIN"
;;
esac
运行脚本我得到一个getprop:not found
此脚本在 cwm 恢复中运行
和文件被放置在 tmp
由于脚本在恢复中运行,我没有得到脚本的确切结果
但是日志如下所示
Installing: /external_sd/a.zip
Finding update package...
I:Update location: /external_sd/a.zip
Opening update package...
Installing update...
minzip: Extracted file "/tmp/2.3/Arjun2.3.txt"
minzip: Extracted file "/tmp/4.0/Arjun4.0.txt"
minzip: Extracted file "/tmp/4.1/Arjun4.1.txt"
minzip: Extracted file "/tmp/4.2/Arjun4.2.txt"
minzip: Extracted file "/tmp/4.3/Arjun4.3.txt"
minzip: Extracted file "/tmp/4.4/Arjun4.4.txt"
minzip: Extracted file "/tmp/binbox.sh"
about to run program [/sbin/busybox] with 5 args
about to run program [/sbin/busybox] with 5 args
about to run program [/sbin/mount] with 2 args
Mounting /system
about to run program [/tmp/binbox.sh] with 2 args
about to run program [/sbin/busybox] with 3 args
Unmounting partitions...
script result was [Installation is complete...]
Installation is complete...
Install from sdcard complete.
这里的 binbox.sh 是脚本 希望有人能找到解决办法
【问题讨论】:
-
您可能只需要提供
getprop的完整路径 - 假设即使在运行恢复分区时也可以使用。 -
请注意,我在 original solution 部分中建议这样做。