Android学习笔记(37):用Configuration类获取和监听设备信息-阿里云开发者社区

开发者社区> 人工智能> 正文

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_12KEYKEYBOARD_NOKEYSKEYBOARD_QWERTY等。

 

public int keyboardHidden:表示键盘是否可用。

HARDKEYBOARDHIDDEN_NO表示硬键盘不可用,但软键盘可用

HARDKEYBOARDHIDDEN_YES 表示软硬键盘都不可用

 

public Locale locale:获取用户当前所在的地区。

 

public int mcc:获取移动信号的国家码。

public int mnc:获取移动信息的网络码。

 

public int navigation:设备方向导航设备的类型。

返回值为:

NAVIGATION_DPADDPAD导航

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)响应设备系统信息的改变

为了监听系统信息的改变,我们需要重写ActivityonConfigurationChanged(Configuration  newConfig)方法,这是基于回调的一种事件处理方式。 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
人工智能
使用钉钉扫一扫加入圈子
+ 订阅

了解行业+人工智能最先进的技术和实践,参与行业+人工智能实践项目

其他文章