今天介绍一个通过发射获取是否有navigationBar的方法。

public static boolean deviceHasNavigationBar() {boolean haveNav = false;try {//1.通过WindowManagerGlobal获取windowManagerService// 反射方法:IWindowManager windowManagerService = WindowManagerGlobal.getWindowManagerService();Class<?> windowManagerGlobalClass = Class.forName("android.view.WindowManagerGlobal");Method getWmServiceMethod = windowManagerGlobalClass.getDeclaredMethod("getWindowManagerService");getWmServiceMethod.setAccessible(true);//getWindowManagerService是静态方法,所以invoke nullObject iWindowManager = getWmServiceMethod.invoke(null);//2.获取windowMangerService的hasNavigationBar方法返回值// 反射方法:haveNav = windowManagerService.hasNavigationBar();Class<?> iWindowManagerClass = iWindowManager.getClass();Method hasNavBarMethod = iWindowManagerClass.getDeclaredMethod("hasNavigationBar");hasNavBarMethod.setAccessible(true);haveNav = (Boolean) hasNavBarMethod.invoke(iWindowManager);} catch (Exception e) {e.printStackTrace();}return haveNav;}

Android通过反射获取手机是否有NavigationBar方法相关推荐

  1. android 常用机型尺寸_Android中获取手机屏幕大小的方法

    本文为大家解析Android中如何获取手机屏幕大小,提供一个解决方法,分享给大家供大家参考,具体内容如下 运行效果图: 运行程序后,当我们点击Button按钮时,可以看到下面的效果图: 具体代码: 我 ...

  2. 在Android中快速获取手机的高级权限

    在Android中快速获取手机的高级权限 想要快速获取Android手机的ROOT权限吗?也许因为ROOT教程太复杂,也许因为不会进工程模式,让我们在使用Android手机时感觉像是开别人的车一样,总 ...

  3. Android获取手机通话记录的方法

    获取手机通话记录流程: 1. 获取ContentResolver; ContentResolver resolver = getContentResolver(); 2.resolver.query( ...

  4. 通过反射获取类的所有属性和方法

    通过反射获取类的所有属性和方法  1    private void button1_Click(object sender, EventArgs e)  2        {  3          ...

  5. android 自动修改ip,Android实现编程修改手机静态IP的方法

    本文实例讲述了Android实现编程修改手机静态IP的方法.分享给大家供大家参考.具体如下: 这里演示通过编程方式动态修改手机静态IP的方法,可以用于wifi接入点切换 public void onC ...

  6. android 图片资源目录下,Android编程实现获取图片资源的四种方法

    本文实例讲述了Android编程实现获取图片资源的四种方法.分享给大家供大家参考,具体如下: 1. 图片放在sdcard中: Bitmap imageBitmap = BitmapFactory.de ...

  7. Android初级教程获取手机系统联系人信息

    在手机内部,对联系人信息存在对应的数据库.我们创建的而联系人信息都存在这张表中.如下是对数据库的截图,我已经对表和应该注意的地方做了红笔标注: 好了,现在可以根据数据库里面的数据来写代码了. 代码如下 ...

  8. 信号强度 android,一种获取手机信号强度的方法

    出于项目需求,需要获取到手机信号强度.本人不才,以前都是采用toString()的方法,然后截取,得到强度,但发现很多机型都不适合.苦苦在API中搜寻,结果都不是很理想.最后在Stackoverflo ...

  9. Android开发之获取手机SIM卡信息

    TelephonyManager是一个管理手机通话状态.电话网络信息的服务类,该类提供了大量的getXxx(),方法获取电话网络的相关信息. TelephonyManager类概述: 可用于访问有关设 ...

最新文章

  1. LINUX TOMCAT
  2. 绿标2.0隐私权限解读——应用分类及对应权限展示
  3. 使用logminer进行审计 Audit by using logminer
  4. Android清单文件详解(三)----应用程序的根节点application
  5. R语言教程:生存分析
  6. caffe在线可视化(转)
  7. #if defined(__cplusplus)
  8. [唐诗]正月十五日夜-苏味道
  9. java json 工具类_Java中JSON处理工具类使用详解
  10. python与matlab比较_python和matlab如何选择?
  11. python格式化输出类型_Python print 格式化输出
  12. SEO行业的路上没有捷径
  13. Android中的传感器之---陀螺仪传感器
  14. AWS System Manger 批量操作EC2 实例
  15. OpenCvSharp N幅图片叠加成一张图片
  16. 发散思维能力(1-2)
  17. Netty实战二-实现UDP的单播和广播
  18. BeautifulSoup案例2——抓取优美图库
  19. 详解抖音壁纸号的具体玩法,变现方法容易吗?
  20. Linux gzip压缩输出

热门文章

  1. 环境配置6-Win10下安装CUDA和cuDNN,配置caffe
  2. 计算机在英语写作中应用,信息化背景下计算机反馈技术在英语写作中应用.doc...
  3. Java基础 DAY03
  4. Java基础 DAY12
  5. Vue子组件重新渲染
  6. matlab仿真plant函数,(整理)matlab预测控制工具箱函数.
  7. CPLD/FPGA 内部结构与原理
  8. SVN windows 快速入门
  9. Unity3d+百度AI 实现摄像头画面实时手势识别
  10. 基于yolov4作者最新力作yolov7目标检测模型实现火点烟雾检测