Answers:
Titanium Backup等仅用于内置Package Manager (pm)
冻结应用程序。pm
具有阻止应用程序运行以及无法在启动器中显示的功能。要使用它,Titanium Backup等执行以下命令:
pm禁用{package_name}
您可以自己冻结应用程序,而无需使用专用的冰箱应用程序。只需在Terminal Emulator或中使用上述命令ADB Shell
。
例如,如果要冻结Stock Web Browser
,请Terminal Emulator
使用su
命令打开并切换到root 。然后,执行# pm disable com.android.browser
。
它会回来的#Package com.android.browser new state: disabled
。做完了!
重新启动启动器(某些设备可能需要重新启动)以查看该应用程序图标已消失。
要解冻应用程序,只需在命令中替换disable
为enable
。
pm disable
只说“ killed”,然后该过程立即再次启动。kill -STOP pid更好。您可以在ps
输出中看到哪些已停止。
我发现如何pm disable
工作:
如果运行cat /system/bin/pm
,它将给出:
# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/pm.jar
exec app_process $base/bin com.android.commands.pm.Pm "$@"
显然,它与我们在Java中使用的PackageManager相同,只是在没有用户应用程序可以直接访问的根上下文中调用它。
您可以使用以下方法检查是否冻结了某些东西
getPackageManager().getApplicationEnabledSetting( the package name ) ==
getPackageManager().COMPONENT_ENABLED_STATE_DISABLED)
在Unix系统中,文件具有3个授权:读取,写入和执行。
(对于3类人员:文件的所有者(通常是文件的创建者),一组人以及其他所有人,但这不在主题之内。)
如果删除文件的执行授权,则无法再启动(执行)该文件。