Build/Environmen

Android中的Environment.getExternalStorageState使用

Build相关属性和调用系统信息的方法
一、Build类的作用主要是获取系统信息,他有两个嵌套类:
Build.BOARD // 主板
Build.BRAND // Android系统定制商
Build.CPU_ABI // cpu指令集
Build.DEVICE // 设备参数
Build.DISPLAY // 显示屏参数
Build.FINGERPRINT // 硬件名称
Build.HOST //
Build.ID // 修订版本列表
Build.MANUFACTURER // 硬件制造商
Build.MODEL // 版本
Build.PRODUCT // 手机制造商
Build.TAGS // 描述build的标签
Build.TIME //时间
Build.TYPE // builder类型
Build.USER //用户

① Build.VERSION      获取android系统的版本信息。
 当前开发代号   Build.VERSION.CODENAME  
 源码控制版本号   Build.VERSION.INCREMENTAL  
 版本字符串   Build.VERSION.RELEASE  
 版本号   Build.VERSION.SDK  
           版本号   Build.VERSION.SDK_INT  
② Build.VERSION_CODES 这个类封装了已经存在的SDK框架及android版本。

ECLAIR_0_1 December 2009: Android 2.0.1
ECLAIR_MR1 January 2010: Android 2.1
FROYO June 2010: Android 2.2
GINGERBREAD November 2010: Android 2.3
GINGERBREAD_MR1 February 2011: Android 2.3.3.
HONEYCOMB February 2011: Android 3.0.
HONEYCOMB_MR1 May 2011: Android 3.1.
HONEYCOMB_MR2 June 2011: Android 3.2.
ICE_CREAM_SANDWICH Android 4.0.
二、关于在获取系统信息的使用
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2)对比应用的版本与平台的版本做相应的处理。
    @TargetApi(Build.VERSION_CODES.HONEYCOMB_MR2)这个语句在程序中指出应用的版本。
    getRadioVersion方法可以根据以上属性获取系统信息。
三、实例:
/**
 * Shows the progress UI and hides the login form.
 */
@TargetApi(Build.VERSION_CODES.HONEYCOMB_MR2)//指明应用版本
private void showProgress(final boolean show) {
// On Honeycomb MR2 we have the ViewPropertyAnimator APIs, which allow
// for very easy animations. If available, use these APIs to fade-in
// the progress spinner.
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2) {//应用版本与平台版本对比。
int shortAnimTime = getResources().getInteger(
android.R.integer.config_shortAnimTime);//获得android定义的短片动画时间

mLoginStatusView.setVisibility(View.VISIBLE);//设置该VIEW为显示
mLoginStatusView.animate().setDuration(shortAnimTime)//设置动画显示时间
.alpha(show ? 1 : 0)//设置动画的渐变效果
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
mLoginStatusView.setVisibility(show ? View.VISIBLE
: View.GONE);//跟据参数控制该控件显示或隐藏
}
});

mLoginFormView.setVisibility(View.VISIBLE);
mLoginFormView.animate().setDuration(shortAnimTime)
.alpha(show ? 0 : 1)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
mLoginFormView.setVisibility(show ? View.GONE
: View.VISIBLE);
}
});
} else {

// The ViewPropertyAnimator APIs are not available, so simply show
// and hide the relevant UI components.
mLoginStatusView.setVisibility(show ? View.VISIBLE : View.GONE); //根据参数控制控件的显示与隐藏
mLoginFormView.setVisibility(show ? View.GONE : View.VISIBLE);
}
}

你可能感兴趣的:(Build/Environmen)