做一个应用如何实现像系统应用一样,使其无法卸载呢?
1、首先要获取root权限
2、adb shell 命令 操作
- 先拷贝apk到手机
- 切换到root用户 把apk拷贝到系统目录/system/app/
- 建议在 /system/app/里创建自己的文件夹 如 /system/app/demofile/,然后将demo.apk放到 /system/app/demofile文件夹中
- 如果权限不够,就要更改权限 chmod 644 demo.apk (chmod 755 demofile)
- $ adb push demo.apk /sdcard/ // 传送要安装的文件,为安装做准备。
- nbsp;$ adb shell $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
- # mount //显示当前mount情况
- nbsp;# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。
- # cat /sdcard/demo.apk > /system/app/demo.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/demo.apk' - Cross-device link。
- # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
- # exit $ exit
注意:在使用chmod 命令时可能出现 Unable to chmod autoconnwifi-debug.apk: Read-only file system 错误
然后使用 mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system 解决
然后重启手机,OK,你的软件就和系统软件一样了
如果敲shell命令时,有些命令不可以用,就在其前面加上busybox, eg: busbox vi filename
卸载软件命令:adb uninstall 软件包名
对应其他设备,只在平板试过 如果只是对系统开放root权限:
1.先要获取权限:adb root
2.再重新装载android文件系统:adb remount
3.后面就可以直接把文件拉进去系统:adb push demo.apk /system/app/
参考文章:https://blog.csdn.net/qq_21355765/article/details/54666664
https://blog.csdn.net/winson_jason/article/details/8072544