gpt4 book ai didi

android - managed profile申请时如何获取主账号的包裹信息列表?

转载 作者:太空狗 更新时间:2023-10-29 15:00:33 24 4
gpt4 key购买 nike

我有一个名为 BasicManagedProfile 的安卓演示它实现了有关设备策略管理器的一些新功能。

现在我有一个问题,关于在托管配置文件中应用程序时如何获取其他包名称。例如,演示显示 chrome 和计算器名称字符串来进行演示。

/**
* Package name of calculator
*/
private static final String PACKAGE_NAME_CALCULATOR = "com.android.calculator2";

/**
* Package name of Chrome
*/
private static final String PACKAGE_NAME_CHROME = "com.android.chrome";

但我想知道如何获得其他人,如拨号器和联系人。

我尝试使用 getInstalledPackages()queryIntentActivities() 但失败了。

顺便说一句,我像这样使用方法addCrossProfileIntentFilter():

IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN); filter.addCategory(Intent.CATEGORY_LAUNCHER);

MyActivity.deviceManager.addCrossProfileIntentFilter(MyReceiver.getComponentName(context), filter, FLAG_MANAGED_CAN_ACCESS_PARENT | FLAG_PARENT_CAN_ACCESS_MANAGED);

但是 queryIntentActivities() 无法返回正确的应用程序列表。请给我一些关于这些的建议。

最佳答案

不是解决方案,而是提示。

通过添加标志 GET_UNINSTALLED_PACKAGES,您可以从主帐户检索包含应用程序的列表:

mContext.getPackageManager()
.getInstalledApplications(
PackageManager.GET_UNINSTALLED_PACKAGES);

卸载主账号没有持久化数据的应用后,该方法不返回。所以它完成了部分工作。

但是,该方法也可能返回真正卸载的应用程序。

If flag GET_UNINSTALLED_PACKAGES is set and if the package is not found in the list of installed applications, the application information is retrieved from the list of uninstalled applications(which includes installed applications as well as applications with data directory ie applications which had been deleted with DONT_DELETE_DATA flag set).

关于android - managed profile申请时如何获取主账号的包裹信息列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27311251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com