最近做了一个项目中需要使用appWidget,但是RemoteViewsService只支持android3.0以后的版本,因此需要判断当前的OS版本,用来处理用户不能使用appWidget

public class Compatibility {    private Compatibility() {    }    public static int getApiLevel() {        return android.os.Build.VERSION.SDK_INT;    }    //判断当前应用的版本是否大于指定的版本,比如当前版本是9,必须大于11才能使用    public static boolean isCompatible(int apiLevel) {        return android.os.Build.VERSION.SDK_INT >= apiLevel;    }    //判断是否使用的是平板    public static boolean isTabletScreen(Context ctxt) {        boolean isTablet = false;        if (!isCompatible(4)) {            return false;        }        Configuration cfg = ctxt.getResources().getConfiguration();        int screenLayoutVal = 0;        try {            Field f = Configuration.class.getDeclaredField("screenLayout");            screenLayoutVal = (Integer) f.get(cfg);        } catch (Exception e) {            return false;        }        int screenLayout = (screenLayoutVal & 0xF);//如果android使用的是1.5版和当前的屏幕不兼容        if (screenLayout == 0x3 || screenLayout == 0x4) {            isTablet = true;        }        return isTablet;    }}

更多相关文章

  1. 下载 编译 Android源代码 和 Android(安卓)kernel源代码
  2. Android在代码中查看系统版本
  3. 关于overridePendingTransition效果在1.6版本中会出现VerifyErro
  4. Android(安卓)STL PORT
  5. Android(安卓)Studio下,如何解决:java-Android问题,为什么我已经
  6. 使用gradle来编译生成apk
  7. Android(安卓)通过配置 productFlavors 实现多版本差异化打包
  8. Android(安卓)项目配置之 Version Name & Code
  9. 关于Android(安卓)版本覆盖安装,安装过程中闪退出现的问题,

随机推荐

  1. jQuery入门学习一
  2. ajax 的 get, post 请求;实战:选项卡和一键
  3. 为留言板添加字数实时统计与禁止超出功能
  4. java中ThreadPool的介绍和使用
  5. java中FutureTask的使用
  6. java 8 stream reduce详解和误区
  7. JDK 15 JAVA 15的新特性展望
  8. 怎么在java中创建一个自定义的collector
  9. 在java中构建高效的结果缓存
  10. java中Locks的使用