【发布时间】:2014-10-17 03:32:27
【问题描述】:
背景
我正在开发一个app-manager 应用程序,我注意到有一种方法可以获取“已卸载应用程序”列表(使用“GET_UNINSTALLED_PACKAGES”标志),这些应用程序要求避免删除卸载时的数据。
文档是这样说的:
标志参数,用于检索有关所有应用程序的一些信息 (甚至是已卸载的)具有数据目录的。这种状态可以 如果应用程序已被删除并带有标志,则结果 DONT_DELETE_DATA 有可能被替换或重新安装 未来。
注意:此标志可能会导致有关当前安装的信息较少 申请被退回。
问题
我已尝试调查有关此功能的更多信息,但除了此文档之外,我几乎没有找到任何关于它的信息。
问题
- 此类应用程序如何请求此功能?除了我所写的内容外,我什至在文档的任何地方都找不到“DONT_DELETE_DATA”。查看this website,它似乎是PackageManager 类的一部分,但我看不到它在Eclipse 上是公开的。
- 数据会保留多长时间?
- 如何检测此类应用程序? PackageInfo 或 ApplicationInfo 有什么可以显示的吗? 也许是 ApplicationInfo 上的“FLAG_INSTALLED”? 我已经运行了它,即使我已经安装和卸载了许多应用程序,我得到的应用程序列表都没有关闭此标志。
- 选择卸载此类“幽灵”般的应用程序真的会删除它们吗?
- 我还能在内置应用管理器中看到这些应用吗?
- 我还能管理此类应用吗?
- 可以检索此类应用程序的哪些信息(图标、名称等...)? 我问这个是因为文档说“这个标志可能会导致更少的信息”。
- 文档说,当我使用 GET_UNINSTALLED_PACKAGES 时,我可能会获得较少的有关“当前安装的应用程序”的信息。这是一个错误吗?不应该是“当前未安装的应用程序”吗?
- 当应用程序使用此标志不删除其数据时,它是指仅内部存储的私有数据,还是外部存储的公共数据?
【问题讨论】:
标签: android uninstallation android-applicationinfo package-info