当前位置: 首页 > news >正文

【技术支持】Android11 中获取应用列表

    <queries><!-- 查询所有启动器应用 --><intent><action android:name="android.intent.action.MAIN" /></intent></queries>

getInstalledApplications方式获取的比较杂乱,有时无法获取第三方应用
建议使用queryIntentActivities

PackageManager pm = getPackageManager();// List<ApplicationInfo> apps = pm.getInstalledApplications(PackageManager.GET_META_DATA);Intent intent = new Intent(Intent.ACTION_MAIN);intent.addCategory(Intent.CATEGORY_LAUNCHER);List<ResolveInfo> resolveInfos = pm.queryIntentActivities(intent, 0);for (ResolveInfo resolveInfo : resolveInfos) {try {ApplicationInfo appInfo = pm.getApplicationInfo(resolveInfo.activityInfo.packageName, 0);Drawable banner = appInfo.loadBanner(pm);if( banner==null){banner = appInfo.loadIcon(pm);}AppItem app = new AppItem(appInfo.loadLabel(pm).toString(),banner,appInfo.packageName);appList.add(app);} catch (PackageManager.NameNotFoundException e) {e.printStackTrace();}}
http://www.dtcms.com/a/243222.html

相关文章:

  • AVCap视频处理成帧和音频脚本
  • React前端框架学习
  • Babylon.js引擎(二)
  • 【python】基于pycharm的海康相机SDK二次开发
  • 美团NoCode设计网站的尝试经验分享
  • 打卡第42天:简单CNN
  • 游戏日志统计操作次数前三的用户
  • Linux日志分割压缩实战指南
  • 手写RPC框架<四> 负载均衡
  • 不同厂商保障UEFI/BIOS安全的技术与机制详解
  • 界面控件DevExpress WPF v24.2新版亮点:报表等组件功能升级
  • thinkphp 一个系统在同一个域名下,一个文件夹下如何区分多站点——穷人的精致规划——仙盟创梦IDE
  • MyBatis实战指南(六)自动映射
  • 债券与股票:投资市场的两大基石
  • 用 OpenSSL 库实现 3DES(三重DES)加密
  • SSL错误无法建立安全连接
  • 三数之和-力扣
  • Koji构建系统宏定义注入与Tag体系解析
  • Bright Data网页抓取工具实战:BOSS直聘爬虫 + PandasAI分析洞察前端岗位市场趋势
  • 西安java面经1
  • Node.js Conf 配置库要点分析 和 使用注意事项
  • 云原生安全实践:CI/CD流水线集成DAST工具
  • 【Lua热更新知识】学习一 Lua语法学习
  • Delphi 获取 XP系统 mac地址
  • 四大LLM 微调开源工具包深度解析
  • 算法第13天|继续学习二叉树:平衡二叉树(递归)、二叉树所有路径(递归)、左叶子之和(递归)
  • mysql如何快速生成测试大数据库
  • Rust 学习笔记:关于 Future trait 和 Async 语法的练习题
  • 项目练习:使用mybatis的foreach标签,实现union all的拼接语句
  • 【Linux shell】条件判断和流程控制