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

android常用方法

获取应用安装来源

    private String getAppInstaller(Context context, String packageName) {return context.getPackageManager().getInstallerPackageName(packageName);}

判断是否系统应用

在/system/app 或者 /system/priv-app目录下的应用。

    public boolean isSystem(Context context, String packageName) {try {PackageManager packageManager = context.getPackageManager();ApplicationInfo appInfo = packageManager.getApplicationInfo(packageName, 0);if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {return true;}if ((appInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) {return true;}} catch (PackageManager.NameNotFoundException e) {return false;}return false;}

获取屏幕的高度

包括状态栏和导航栏高度。

    public int getFullHeight(){WindowManager windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);DisplayMetrics metrics = new DisplayMetrics();windowManager.getDefaultDisplay().getRealMetrics(metrics);int fullWindowHeight = metrics.heightPixels;return fullWindowHeight;}

获取导航栏的高度

    public int getNavigationBarHeight() {Context context = this;int result = 0;int resourceId = context.getResources().getIdentifier("navigation_bar_height", "dimen", "android");if (resourceId > 0) {result = context.getResources().getDimensionPixelSize(resourceId);}return result;}

获取状态栏的高度

public int getStatusBarHeight(Context context) {int statusBarHeight = 0;Resources resources = context.getResources();int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");if (resourceId > 0) {statusBarHeight = resources.getDimensionPixelSize(resourceId);}return statusBarHeight;
}

其他

在网上看到一篇总结的非常全面的工具类。
android常用工具类

http://www.lryc.cn/news/275780.html

相关文章:

  • Linux内核--网络协议栈(一)Socket通信原理和实例讲解
  • Spring事务(2):声明式事务管理案例-转账(xml、注解)
  • NACHI机器人模拟示教器如何切换中文
  • 用通俗易懂的方式讲解:使用 Mistral-7B 和 Langchain 搭建基于PDF文件的聊天机器人
  • 综合智慧能源监测管理平台,实现能源管理“透明”化
  • 【大数据进阶第三阶段之Datax学习笔记】使用阿里云开源离线同步工具DataX 实现数据同步
  • kotlin chunked 和 windowed
  • C语言光速入门笔记
  • Flutter+Go_Router+Fluent_Ui仿阿里网盘桌面软件开发跨平台实战-买就送仿小米app开发
  • 内联函数的作用
  • Simpy简介:python仿真模拟库-02/5
  • Kafka高级应用:如何配置处理MQ百万级消息队列?
  • LIN总线学习笔记(1)-总线传输规范
  • Qt界面篇:Qt停靠控件QDockWidget、树控件QTreeWidget及属性控件QtTreePropertyBrowser的使用
  • H266/VVC网络适配层概述
  • new FormData 同时发送表单 json 以及文件二进制流
  • 计算机环境安全
  • Activiti7工作流引擎:多租户
  • Postman实现压力测试
  • 爬虫工具(tkinter+scrapy+pyinstaller)
  • MySQL常用sql语句记录
  • 2024.1.4力扣每日一题——被列覆盖的最多行数
  • Elasticsearch:Serarch tutorial - 使用 Python 进行搜索 (一)
  • 第五讲_css元素显示模式
  • Shell脚本入门实战:探索自动化任务与实用场景
  • 【AI视野·今日Sound 声学论文速览 第四十二期】Fri, 5 Jan 2024
  • Java中如何使用SQLite数据库
  • kettle的基本介绍和使用
  • 数据结构第2章 栈和队列
  • Axure鲜花商城网站原型图,网上花店订花O2O本地生活电商平台