我正在开发这个管理员/用户锁屏应用程序。这个应用程序需要的是,如果管理员(由他的个人识别码/密码识别)试图解锁屏幕,它允许管理员访问手机上安装的所有应用程序,而其他用户(由他的个人识别码/密码识别) ) 尝试解锁屏幕,这使他们可以访问特定的应用程序。我已经为我的应用程序设置了锁屏和启动器。但我对如何为管理员和用户处理启动器感到困惑。
Android 不允许以编程方式切换启动器 Activity ,因此这个想法不合适。所以我发现我需要以编程方式刷新用户(非管理员)已安装应用程序的列表,以仅选择管理员授权的特定应用程序。所以我的问题是,如何在用户解锁屏幕后刷新已安装应用程序列表并仅选择将向用户显示的特定应用程序?
最佳答案
要获取所有已安装应用的列表,请使用 PackageManager:
PackageManager packageManager = getPackageManager();
List<PackageInfo> packs = packageManager.getInstalledPackages(0);
for(int i=0; i < packs.size(); i++) {
PackageInfo p = packs.get(i);
ApplicationInfo a = p.applicationInfo;
// check if app is suitable for the user
}
关于android - 以编程方式更改自定义启动器中的应用程序列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33713590/