gpt4 book ai didi

android - 是否可以在 Intent AppChooser 中隐藏某些应用程序?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:21:28 25 4
gpt4 key购买 nike

我想要的是在我的应用程序中打开 PDF 文件时隐藏 WebBrowser。我只想显示 PDF 阅读器应用程序,如果没有则显示警告消息。

现在我可以创建 AppChooser 对话框,但我不知道如何隐藏某些应用程序。

非常感谢!

最佳答案

您必须在启动选择器之前查询可用的应用程序。您需要了解有关要排除的应用程序的一些信息。例如包名

Intent pdfIntent = ...;
PackageManager pm = getPackageManager();
List<ResolveInfo> activities = pm.queryIntentActivities(pdfIntent, 0);

List<Intent> targetPDFIntents = new ArrayList<Intent>();
for (ResolveInfo currentInfo : activities) {
String packageName = currentInfo.activityInfo.packageName;
if (!"pageToExclude".equals(packageName)) {
Intent targetPdfIntent = new Intent(android.content.Intent.ACTION_VIEW, exportData);
targetPdfIntent.setPackage(packageName);
targetPDFIntents.add(targetPdfIntent);
}
}

Intent chooserIntent = Intent.createChooser(targetPDFIntents.remove(0), "title");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetPDFIntents.toArray(new Parcelable[] {}));
startActivity(chooserIntent);

有了它,您可以使用包的显式 Activity 列表启动选择器。它们都可以处理在第一行中创建的 IntentType pdfIntent。

关于android - 是否可以在 Intent AppChooser 中隐藏某些应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19511976/

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