`
fokman
  • 浏览: 242259 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

android判断当前sdk版本以及是否是平板

 
阅读更多

     最近做了一个项目中需要使用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;
    }

}

 

分享到:
评论

相关推荐

    Android高级应用源码-android多分辨率适配 ,判断平板还是手机,等比例缩小图片.rar

    此外,`Build.VERSION.SDK_INT`可以用来检查设备的Android版本,而`DisplayMetrics`对象则能提供屏幕的宽度和高度信息,结合这些信息,可以编写逻辑来准确判断设备类型。 最后,等比例缩小图片是一项常见的需求。...

    安卓开发-android多分辨率适配 ,判断平板还是手机,等比例缩小图片.zip.zip

    在安卓应用开发中,适配不同的设备分辨率是一项重要的任务,因为Android系统支持各种尺寸和分辨率的设备,包括手机、平板以及智能电视等。本压缩包提供的资料主要关注三个方面:多分辨率适配、设备类型判断(手机和...

    Fragment的使用,隐藏显示以及androidPad横竖屏切换

    // 判断当前屏幕的方向 if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { // 横屏处理 } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){ // 竖屏处理 } } ```...

    Android 壁纸设置和确认demo源码和apk文件

    在Android SDK中,`WallpaperManager`类是专门用来管理壁纸的,它提供了设置和获取壁纸的方法。例如,我们可以使用`setStream()`或`setBitmap()`方法来设置壁纸,这两个方法分别接受输入流和位图作为参数,将它们...

    Android推箱子详细源码(仅供参考)

    这个源码适用于各种版本的ADT(Android Developer Tools)以及Android Studio,展示了如何在Android平台上实现游戏开发。 首先,让我们了解Android开发的基础。Android是Google开发的一款开源操作系统,主要用于...

    android 双屏异显

    - 应用需要能够智能判断当前的性能状态,适时调整显示效果以保持流畅性。 9. **测试与调试**: - 开发双屏应用时,需要在实际的双屏设备上进行广泛的测试,确保在各种配置下都能正常工作。 - 调试工具和日志记录...

    基于android数独游戏毕业设计.doc

    本项目使用Google提供的Android Software Development Kit (SDK)进行开发,包括Eclipse或Android Studio集成开发环境,以及Android模拟器或实际设备进行测试。Java语言用于编写游戏逻辑,XML语言用于定义用户界面...

    Android应用源码使用ViewPager实现左右滑动翻页.zip

    ViewPager是Android SDK中的一个ViewGroup,它负责管理一系列可以横向滑动的页面。每个页面通常是一个Fragment或者一个View,用户可以通过手势左右滑动来切换页面。ViewPager会根据当前显示的页面以及相邻的页面...

    安卓悬浮吸顶效果.zip

    5. **滑动监听事件**: 需要监听ScrollView或NestedScrollView的滑动事件,通过onScrollChanged()方法来判断当前滚动位置,从而决定吸顶区域是否应该固定在顶部。 6. **状态栏染色**: 当吸顶区域固定在顶部时,可能...

    高级操作系统课程设计基于Android平台的2048游戏设计开发.docx

    在创建过程中选择适当的SDK版本,并配置项目的基本信息,如最小支持API级别、目标API级别等。 **设计游戏布局** 使用XML布局文件定义游戏界面的外观。对于2048游戏来说,主要包括一个网格布局(grid layout)用于...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    NativeApp 使用传统原生态Android SDK来实现的应用 WebApp 基于浏览器来实现的一种应用 HybridApp 一种可以下载的Native App,其用户界面的全部或者部分元素在嵌入式浏览器组件(WebView之类的)里面运行 优雅降级...

    face++修改横屏

    在IT行业中,人脸检测是一项重要的计算机视觉技术,广泛应用于安全监控、身份验证、社交媒体等多个领域。...在实际项目中,开发者还应考虑到不同设备和Android版本的兼容性,以及性能优化,以达到最佳的运行效果。

    基于J2ME的推箱子游戏的设计与实现

    - 游戏状态管理:保存和加载进度,记录得分,以及判断游戏是否结束。 4. **性能优化**: - J2ME平台资源有限,因此需要优化代码以减少内存占用和提高运行速度。例如,使用合适的数据结构存储地图,避免不必要的...

    安卓小游戏毕业设计.docx

    - **连通算法**:判断两个图标是否可以通过不超过三次转折的路径相连。 - **僵局判定算法**:当游戏进入无法继续的状态时,自动识别并提示用户重新布局。 #### 五、系统详细设计与实现 1. **开发环境搭建**:...

    安卓课程设计报告借鉴.pdf

    1. **Android Studio**:这是Google官方推出的集成开发环境(IDE),专门为安卓应用开发设计,提供了丰富的工具集,包括代码编辑器、调试器、模拟器以及版本控制集成。 2. **Java Development Kit (JDK)**:安卓...

    Android获取屏幕尺寸大小代码实例

    可以使用 `Display` 的 `getRotation()` 方法获取屏幕的旋转角度,或者使用 `Configuration` 类来判断当前的屏幕方向。同时,如果需要在布局文件中动态调整UI元素大小,可以使用 `dp` 或 `sp` 单位,它们会根据设备...

    SlideNavigationView

    `ViewPager`是Android SDK中的一个组件,它允许用户通过手势左右滑动来切换页面。 2. **顶部栏设计**:顶部栏通常包含分页指示器和可点击的标签。`TabLayout`是Android Design Support Library的一部分,它可以轻松...

    DeviceBuildInfo

    5. **Android版本**:`Build.VERSION.RELEASE`给出当前安装的Android系统的版本号,如“7.1.1”。 6. **内核版本**:`Build.KERNEL_VERSION`提供了设备内核的版本信息,这对于了解设备的底层操作系统有帮助。 7. *...

Global site tag (gtag.js) - Google Analytics