您的位置:首页 > 移动开发 > Android开发

Android4.2 使preinstall中的所有应用正常显示在launcher的默认布局中

2013-10-23 11:35 651 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息