当我运行以下功能时,我遇到了 MiUi SO 的问题。
fun getAppsThatCanBeStopped(context: Context): List<String> {
return with(ArrayList<String>()) {
addAll(
context.packageManager.getInstalledApplications(PackageManager.GET_META_DATA)
.filter { (it.flags and ApplicationInfo.FLAG_STOPPED == 0) and (it.flags and ApplicationInfo.FLAG_SYSTEM == 0) }
.map { it.packageName }
)
this@with
}
}
问题仅在于 MiUi 所以所有应用程序都返回,FLAG ApplicationInfo.FLAG_STOPPED 它不被满足。
应仅返回未停止且不是系统应用的应用。
有什么建议么?