我可以使用 updater-script 的 delete 来删除 /system 中的文件:
delete("/system/app/YouTube.apk");
但是,我不能执行以下操作
delete("/system/app/*.odex");
为什么它不起作用?
我认为命令是有限的..只有指定文件的全名和路径才能删除文件。但是,您可以编写一个 sh 脚本来执行此操作,并从 updater-script 执行它。
例如,使用以下代码创建一个 sh 文件并将其放在 zip 的根目录中:
#!/sbin/sh
rm -rf /system/app/*.odex
并从 updater-script 执行它
package_extract_file("rmodex.sh", "/tmp/rmodex.sh");
set_perm(0, 0, 0777, "/tmp/rmodex.sh");
run_program("/tmp/rmodex.sh", "");
delete("/tmp/rmodex.sh");
其中 rmodex.sh 是您制作的文件。还有一件事,要小心,因为rm -rf /system/app/*.odex
还会删除所有带有 *.odex 名称的文件夹。