Android Build.VERSION.SDK_INT兼容介绍】的更多相关文章

尽管Android向下兼容不好,但是一个程序还是可以在多个平台上跑的.向下兼容不好,接口改变,新的平台上不能用旧的API,旧的平台更不可能用新的API,不等于一个平台需要一个APK.可以在高SDK上开发,并在程序中作版本判断,低版本运行环境使用旧的API. 例如要开发一个显示通话记录的程序,需要兼容1.6~2.2,我们知道不同的平台SDK level不同,1.5是3,1.6是4,2.2是8.对应的可以使用android.os.Build进行判断.源代码如下: Java代码: if(Build.V…
刚遇到了这个问题: Field requires API level 4 (current min is 1): android.os.Build.VERSION#SDK_INT 解决方法: 修改 AndroidManifest.xml 中的 uses-sdk 标签,例如: <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14" /> 参考:Android程序出现错误“Field…
Build.VERSION.SDK_INT是系统的版本,Build.VERSION_CODES.GINGERBREAD是版本号. 到VERSION.SDK_INT不禁诧异,这是何物?! 看API的定义,如下: [java] view plaincopyprint?   public static final int SDK_INT Since: API Level 4 The user-visible SDK version of the framework; its possible valu…
//BOARD 主板 String phoneInfo = "BOARD: " + android.os.Build.BOARD; phoneInfo += ", BOOTLOADER: " + android.os.Build.BOOTLOADER; //BRAND 运营商 phoneInfo += ", BRAND: " + android.os.Build.BRAND; phoneInfo += ", CPU_ABI: "…
看到VERSION.SDK_INT不禁诧异,这是何物?! 看API的定义,如下: 原来是一个常量值.但是这个常量值可以根据系统的不同而不同哟!为了揭开其神秘的面纱,将源码ctrl如下: 可以看出,获取系统属性,类似Java中获取系统属性值. 研究一下 SystemProperties 这个类,知道该类没有在API中出现,android并没有开放这个API接口.VERSION.SDK_INT 常量,在开发过程中还是比较有用的,为了做到平台兼容性,可以使用该值做一些判断,防止API调用过时或者消失.…
cp : https://blog.csdn.net/yi_master/article/details/80067198 1:JAVA8特性支持 1)Base64.java 在升级到as3.0之后,我们便可以使用Base64.java这个类了,这个类的在java.util.Base64包下:而android里面也有一个Base64.java,那么他们加解密的内容是否一致? 先看下工程配置 代码如下 private void showUserJava8Feature(){ //java base…
我们在开发app时避免不了需要添加应用内升级功能.当app启动时,如果检测到最新版本,将apk安装包从服务器下载下来,执行安装.安装apk的代码一般写法如下,网上随处可以搜到 public static void installApk(Context context, File file) { Intent intent = new Intent(Intent.ACTION_VIEW); Uri data = Uri.fromFile(file); intent.setDataAndType(d…
使用@TargetApi annotaion, 使高版本API的代码在低版本SDK不报错 例如: AsyncTask.THREAD_POOL_EXECUTOR, 这个静态变量是API11才有的, 设置project build target 为 2.1. 这个时候eclipse会提示找不到这个变量. 只要在方法前面加一个 @TargetApi(11), 这样就不会报错了,程序已经可以跑在低版本SDK上了. 另外在代码上要加一个版本判断是否执行该代码, 例子如下 @TargetApi(11) pu…
这意思大概是adt用了1.7,abt(android build tools)就要用19或更高,可是abt在哪设置呢,原来是在sdk manager中 之前我已安装的最高的abt是17,然后~~~,FQ什么的不容易做到啊,直接从同事那拷了一个20的文件夹,问题就解决了…
$ mmm -help用法:make [选项] [目标] ...选项: -b, -m 忽略兼容性. -B, --always-make Unconditionally make all targets. -C 目录, --directory=目录 在所有操作前切换到“目录”. -d 打印大量调试信息. --debug[=FLAGS] 打印各种调试信息 -e, --environment-overrides 指定替代makefile中默认设置的环境变量 -f FILE, --file=FILE,…