1. 按如下所示修改:device/softwinner/wing-common/init.rc:
mkdir /data/app 0771 system system
后添加:
# added by shenjianjun for: run /system/bin/preinstall.sh to preinstall all apps in /system/preinstall. 2013.09.13 ..start
exec /system/bin/sh /system/bin/preinstall.sh
# added by shenjianjun for: run /system/bin/preinstall.sh to preinstall all apps in /system/preinstall. 2013.09.13 ..end
然后,注释掉以下内容:
# comed by shenjianjun start
# service preinstall /system/bin/busybox sh /system/bin/preinstall.sh
# user root
# group root
# disabled
# oneshot
# on property:sys.boot_completed=1
# start preinstall
# comed by shenjianjun end
2. preinstall.sh的内容:
#!/system/bin/busybox sh
BUSYBOX="/system/bin/busybox"
mkdir /bootloader
mount -t vfat /dev/block/bootloader /bootloader
if [ ! -e /data/system.notfirstrun ] ; then
echo "do preinstall job"
# added by shenjianjun for: copy all preinstall apks to /data/app, so these apks will be installed by PackageManagerService. 2013.09.13 ..start
$BUSYBOX cp /system/preinstall/*.apk /data/app/
$BUSYBOX cp /sdcard/preinstall/*.apk /data/app/
chown system:system /data/app/*.apk
chmod 0644 /data/app/*.apk
# added by shenjianjun for: copy all preinstall apks to /data/app, so these apks will be installed by PackageManagerService. 2013.09.13 ..end
$BUSYBOX cp /system/etc/chrome-command-line /data/local/
$BUSYBOX chmod 777 /data/local/chrome-command-line
mkdir /databk
mount -t ext4 /dev/block/databk /databk
rm /databk/data_backup.tar
umount /databk
rmdir /databk
$BUSYBOX touch /data/system.notfirstrun
echo "preinstall ok"
elif [ -e /bootloader/data.need.backup ] ; then
echo "data backup:tar /databk/data_backup.tar /data"
mkdir /databk
mount -t ext4 /dev/block/databk /databk
rm /databk/data_backup.tar
$BUSYBOX tar -cf /databk/data_backup.tar /data
rm /bootloader/data.need.backup
umount /databk
rmdir /databk
else
echo "do nothing"
fi
umount /bootloader
rmdir /bootloader
3. 将定制好的布局文件替换Launcher2中的default_workspace.xml然后重新编译Launcher2.
4. 重新编译与打包:
rm $OUT/system
rm $OUT/root
make -j16 && pack