Android学习笔记(37):用Configuration类获取和监听设备信息
Configuration类用于描述手机设备上的配置信息。有时候我们的app需要获取手机的系统信息,并根据手机的信息来调整我们的app,这时候我们就需要用到Configuration类。
(1)获取Configuration对象
调用Activity的方法获取系统的Configuration对象:
Configuration config = getResources().getConfiguration();
(2)获取设备系统信息
在获取了Configuration对象之后,直接访问Configuration的共有对象就可以获取设备系统信息。
我们可以通过该对象获取系统的如下配置信息:
public int densityDpi: 是android系统为不同屏幕尺寸、分辨率提供统一单位(dp)的一个可变参数。
public float fontScale:字体的缩放因子。
public int keyboard:设备关联的键盘类型。返回值为:KEYBOARD_12KEY、KEYBOARD_NOKEYS、KEYBOARD_QWERTY等。
public int keyboardHidden:表示键盘是否可用。
HARDKEYBOARDHIDDEN_NO表示硬键盘不可用,但软键盘可用
HARDKEYBOARDHIDDEN_YES 表示软硬键盘都不可用
public Locale locale:获取用户当前所在的地区。
public int mcc:获取移动信号的国家码。
public int mnc:获取移动信息的网络码。
public int navigation:设备方向导航设备的类型。
返回值为:
NAVIGATION_DPAD:DPAD导航
NAVIGATION_NONAV:无导航
NAVIGATION_TRACKBALL:轨迹球导航
NAVIGATION_UNDEFINED:不明
NAVIGATION_WHEEL:滚轮导航
public int orientation:获取系统屏幕的方向。
ORIENTATION_LANDSCAPE:横屏
ORIENTATION_PORTRAIT:竖屏
public int touchscreen:获取触摸屏的触摸方式。
TOUCHSCREEN_FINGER:接受手指的触摸屏
TOUCHSCREEN_NOTOUCH:无触摸屏
TOUCHSCREEN_STYLUS:触摸笔式触摸屏
TOUCHSCREEN_UNDEFINED:不明
(3)响应设备系统信息的改变
为了监听系统信息的改变,我们需要重写Activity的onConfigurationChanged(Configuration newConfig)方法,这是基于回调的一种事件处理方式。
相关文章
- [Android]中文API(一)android包下的那些类
- Android教程-android studio 制作.9 图片
- Android开发之旅:android架构
- 【第四篇】学习 android 事件总线androidEventbus之发布事件,子线程中接收
- macos安装android studio(Android Studio 2021.1.1)
- 【已解决】unity4.2.0f4 导出Android工程报错:Error building Player: ArgumentException: Illegal characters in path. [unity导出android工程 报错,路径含有非法字符]
- Android GIS开发系列-- 入门季(5) FeatureLayer加载本地shp文件与要素查询
- android java 堆栈_Android下打印调试堆栈方法
- Android设备唯一识别码的获取
- 【Android Gradle 插件】自定义 Gradle 任务 ⑦ ( 控制 Gradle 执行任务顺序 | Task#dependsOn 函数 | Task#mustRunAfter 函数 )
- 【Android Gradle 插件】TestOptions 配置 ② ( TestOptions#animationsDisabled 属性配置 | Android 工程本地化测试与设备化测试 )
- 【Android 逆向】Android 系统文件分析 ( 外部存储设备文件 | sbin 命令程序目录 | dev 字符设备目录 )
- 【Android 性能优化】应用启动优化 ( Trace 文件分析 | 结合代码分析 Trace 文件 )
- Android学习笔记(四十):Preference的使用
- Android Multimedia框架总结(十七)音频开发基础知识
- Android 开源项目android-open-project解析之(三) ScrollView,TimeView,TipView,FlipView
- 【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
- Android---工具类Utils(你想不到的完美)
- Android的报错提示:Failed to resolve: com.android.support:appcompat-v7:28.0.0