Configuration类专门用于描述手机设备上的配置信息,这些配置信息既包括用户特定的配置项,也包括系统的动态设备配置,程序可调用Activity的如下方法来获取系统的Configuration对象:
Configuration cfg=getRosources().getConfiguration();
实例:获取系统设备状态
该实例界面布局代码如下:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.example.home.planefly.MainActivity"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/ori"/> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/navigation"/> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/touch"/> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/mnc"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/bn" android:text="@string/getInformation"/> </LinearLayout>
java代码如下:
public class MainActivity extends AppCompatActivity { EditText ori; EditText navigation; EditText touch; EditText mnc; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取应用界面中的应用组件 ori=(EditText)findViewById(R.id.ori); navigation=(EditText)findViewById(R.id.navigation); touch=(EditText)findViewById(R.id.touch); mnc=(EditText)findViewById(R.id.mnc); Button bn=(Button)findViewById(R.id.bn); bn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //获取系统的configuration对象 Configuration cfg=getResources().getConfiguration(); String screen=cfg.orientation==Configuration.ORIENTATION_LANDSCAPE ?"横向屏幕":"竖向屏幕"; String mncCode=cfg.mnc+""; String naviName=cfg.orientation==Configuration.NAVIGATION_NONAV ?"没有方向控制":cfg.orientation==Configuration.NAVIGATION_WHEEL ?"滚轮控制方向":cfg.orientation==Configuration.NAVIGATION_DPAD ?"方向键控制方向":"轨迹球控制方向"; navigation.setText(naviName); String touchName=cfg.touchscreen==Configuration.TOUCHSCREEN_NOTOUCH ?"无触摸屏":"支持触摸屏"; ori.setText(screen); mnc.setText(mncCode); touch.setText(touchName); } }); } }以上;
仅供以后参考之用。