对这几个概念模模糊糊,看到一篇文章就记录下来. 当你发布一个应用之后,(取决于具体的发布时间)可能没过几个月 Android 系统就发布了一个新版本.这对你的应用意味着什么,所有东西都不能用了?别担心,向前兼容是 Android 非常关注的事情.用户在升级到新版 Android 的时候,用以前版本的 SDK 构建的现有应用应该不会出问题.这就是 compileSdkVersion, minSdkVersion 和 targetSdkVersion 的作用:他们分别控制可以使用哪些 API ,要求…
在一年之中,也有可能只是几个月后,你会发布你的Android应用程序.但是这中间有可能会发布新的版本的Android系统,比如:6.0+. 你肯定希望你的应用可以向前兼容,当用户升级到新的Android系统时候,你的应用调用的系统API不会编译失败,也不会Crashing. 这时候就要考虑一下三个参数了:compileSdkVersion, minSdkVersion, and targetSdkVersion (它们标识什么版本的API可以使用,应用兼容的版本,编译需要的API版本) comp…
英文原文:Picking your compileSdkVersion, minSdkVersion, and targetSdkVersion 作者:Ian Lake,Google Android 推广工程师:翻译:韩国恺. 当你发布一个应用之后,(取决于具体的发布时间)可能没过几个月 Android 系统就发布了一个新版本.这对你的应用意味着什么,所有东西都不能用了? 别担心,向前兼容是 Android 非常关注的事情.用户在升级到新版 Android 的时候,用以前版本的 SDK 构建的现…
compileSdkVersion(Eclipse中叫做build target) 1.在eclipse中位于项目根目录中的project.properties文件中 2.在studio中位于项目中的build.gradle中 作用:用哪个 Android SDK 版本编译你的应用 强烈推荐总是使用最新的 SDK 进行编译(默认就是最新的) 修改 compileSdkVersion 不会改变运行时的行为.当你修改了 compileSdkVersion 的时候,可能会出现新的编译警告.编译错误,…
API level API level是一个整数,它指的是我们使用的框架(Framework)的版本,也就是我们使用的sdk中的各个平台下的android.jar. 但是这个API level又和Android系统的版本有着对应关系,并且每个系统都会在内部记录它所使用的API level. https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#provisional compileSdkVersion(…
本文参考了谷歌开发者文档:http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#provisional 如果开发的应用用户较多,那么必须保证应用在多个版本不同的设备上能够正确的运行.这就要求对各个版本比较熟悉,知道在什么版本中加入了什么新的功能或特性.但是Android的版本太多了,是个令人头疼的问题.如果想了解Android的版本差异,建议读一下Android开发者文档上相关的章节. 为了让你的应用程序…
Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分 标签: build targetminSdkVersiontargetSdkVersionmaxSdkVersionuses-sdk 2014-01-23 13:14 10937人阅读 评论(16) 收藏 举报 分类: Android(22) 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 本文参考了谷歌开发者文档:http://de…
参考http://developer.android.com/guide/topics/manifest/uses-sdk-element.html API Level 是一个整型值,表示Android发布的某个特定版本,新API Level相对于老API Level会增加以下内容:* 新增类.或者已有类中新增.修改.甚至删除的API* 新定义的xml tag* 新定义Intent* 新定义的Permission* 其它… API Level和版本有如下对应关系:Platform Version…
问题引入:   有一个下载功能,在Android 5.x设备上运行正常,Android 6.x上运行异常,现象是下载进度卡在0%.   问题排查发现,是sdk的target设置为23导致,修改为21则恢复正常. 这就引出了今天讨论的问题:Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion有什么区别? project.properties中的target--即build target,APK编译版本,会引入到APK项目…
minSdkVersion和targetSdkVersion相信非常多人都不太理解.我在网上也看了很多关于这两者差别的文章,感觉说的都非常模糊.直到我在stackOverFlow看到Android Min SDK Version vs. Target SDK Version这篇文章后,我才最终弄清楚怎样去设置minSdkVersion和targetSdkVersion.如今我将分享给大家. 简言之,这篇文章的目的是为了区分minSDK和targetSDK,这两者相当于一个区间.你能够用到targ…
转http://www.07net01.com/2015/07/878098.html minSdkversion和targetSdkVersion相信很多人都不太理解,我在网上也看了许多关于这两者区别的文章,感觉说的都很模糊,直到我在stackOverFlow看到android Min SDK Version vs. Target SDK Version这篇文章后,我才终于弄清楚如何去设置minSdkVersion和targetSdkVersion,现在我将分享给大家. 简言之,这篇文章的目的…
minSdkVersion和targetSdkVersion相信非常多人都不太理解.我在网上也看了很多关于这两者差别的文章,感觉说的都非常模糊.直到我在stackOverFlow看到Android Min SDK Version vs. Target SDK Version这篇文章后,我才最终弄清楚怎样去设置minSdkVersion和targetSdkVersion.如今我将分享给大家. 简言之,这篇文章的目的是为了区分minSDK和targetSDK,这两者相当于一个区间.你能够用到targ…
在AndroidMenifest.xml中,常常会有下面的语句:  <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="10" android:maxSdkVersion="10" /> 在default.properties中,会看到下面的语句:  target=android-10 如果是使用Eclipse的话,还可能会看到这样的警告: Attribute m…
compileSdkVersion: 编译版本:compileSdkVersion告诉gradle使用哪个版本AndroidSDK编译你的应用: minSdkVersion: 最低SDK版本:他代表的意思是你的App最低支持的手机版本.如果你的minSdkVersion设置成了16(Android4.0),那么Apk在16以下系统的手机无法安装: targetSdkVersion: API目标版本:随着 Android 系统的升级,某个系统的 API 或者模块的行为可能会发生改变,但是为了保证老…
1. minSdkVersion minSdkVersion限制安装application所需要的系统最低版本,低于该版本的系统都不可以安装该application.同时不能使用该level版本SDK所不具备的API,例如在minSdkVersion为8的application中调用[this.getActionBar()]就会出现Call requires API level 11 (current min is 8): android.app.Activity#getActionBar的错误…
targetSdkVersion是Android提供向前兼容的主要依据,在应用的targetSdkVersion没有更新之前,系统不会应用最新的行为变化 比如设置了app的targetSdkVersion是23,那么Google会认为你当前的应用已经完全适配了Android 6.0, 所以在Android 6.0上面的新API都会运行,原有的废弃的API都会失效,如果设置了比较低的targetSdkVersion,那么即使运行在版本比较高的设备上,也不会出问题: minSdkVersion是应用…
minSdkVersion 描述:app最低支持的sdk版本号 作用:如果手机SdkVersion小于app中定义的minSdkVersion,则android系统不允许安装该app 定义位置:AndroidManifest.xml 默认值:1 检测时机:app安装 maxSdkVersion 描述:app最高支持的sdk版本号 作用:如果手机SdkVersion大于app中定义的maxSdkVersion,则android系统不允许安装该app 定义位置:AndroidManifest.xml…
前几天 Google 官方发布文章解析 compileSdkVersion.minSdkVersion 以及 targetSdkVersion 的含义,以及合理设置各个值的意义,原文 Picking your compileSdkVersion, minSdkVersion, and targetSdkVersion(后面简称 “原文”),还有翻译版. 其中,compileSdkVersion 和 minSdkVersion 都非常好理解,前者表示编译的 SDK 版本,后者表示应用兼容的最低 S…
Android Lint Checks Here are the current list of checks that lint performs as of Android Studio 2.3 dev:     Correctness ===========   AdapterViewChildren ------------------- Summary: AdapterViews cannot have children in XML   Priority: 10 / 10 Sever…
一,在Eclipse下改项目里的SDK的版本方法有几种,都比较简单:1.右键单击项目--->properties---->Resource----->Android在Project Bulid Target对话框中选择你需要的Android版本.2.Resource--->Libraries对话框右边的  Addlibraries--->Android Classpath Container---->Next--->选择项目名称即可3.如果你还不放心,那么我们再看…
android 应用笔记 android 应用笔记 小书匠 Android 综合教程 Android常用技巧 安卓系统架构 安卓源码开发 安卓驱动 Linux内核 安卓应用开发 Java 教程 ticwear 开发资料 最新资讯 Android 综合教程 Android Developers - Android6.0_API23_最新镜像 大牛们是怎么阅读 Android 系统源码的? 老罗的Android之旅 我的Android开发相关文章 android4.3 Bluetooth(le)分析…
原文链接: https://medium.com/google-developers/picking-your-compilesdkversion-minsdkversion-targetsdkversion-a098a0341ebd#.tz5zzucma 原文作者:Ian Lake,Google Android 推广工程师 译文标题:如何选择compileSdkVersion, minSdkVersion, targetSdkVersion 译文作者:韩国恺 当你发布一个应用之后,(取决于具体…
Android SDK下载和安装 本地已有合适版本Android SDK,则无需再下载,或者可以使用SDK Manager更新SDK: 没有SDK,则需要下载. 这里说一下使用SDK Manager下载/更新SDK: (1)如果没有安装SDK Manager,可以下载安装,地址 https://github.com/inferjay/AndroidDevTools#sdk-tools,下载完毕,直接运行安装就可以,安装过程中会自动匹配本机环境下的jdk: 进入到安装目录下: (2)启动SDK M…
来自:http://www.2cto.com/kf/201604/496917.html 今天又有人问Tools,Build-Tools,Platform-tools有什么区别,是干嘛的? 现在对SDK目录做一下总结阐述! SDK目录 add-ons 这里面保存着附加库,第三方公司为android 平台开发的附加功能系统.比如GoogleMaps,当然你如果安装了OphoneSDK,这里也会有一些类库在里面. docs 这里面是Android SDKAPI参考文档,所有的API都可以在这里查到.…
1.参考文章关于compileSdk.minSdk.targetSdk的文章 http://chinagdg.org/2016/01/picking-your-compilesdkversion-minsdkversion-targetsdkversion/ 关于tools的文章 http://blog.csdn.net/mooreliu/article/details/47167473 2.minSdkVersion.compileSdkVersion.targetSdkVersion2.1.…
Android Studio里的app的build.gradle文件: android { compileSdkVersion 24 buildToolsVersion "24.0.0" defaultConfig { applicationId "com.wingsofts.rxretrofitmvpdagger2databinding" minSdkVersion 15 targetSdkVersion 24 versionCode 1 versionName…
StackOverFlow中对这个问题进行了详细的讨论:http://stackoverflow.com/questions/24521017/android-gradle-buildtoolsversion-vs-compilesdkversion [问题的结论]就是: 1.CompileSdkVersion是你SDK的版本号,也就是API Level,例如API-19.API-20.API-21等等. 2.buildeToolVersion是你构建工具的版本,其中包括了打包工具aapt.dx…
这是一个报错,是我在Android Studio上添加完Support-v4和v7包之后爆出的错误,百度了好久也没有百度到.当时我的项目有minSdkVersion 19. 设置版本最小为L的时候也会出错,并且我的测试机是4.3,根本就无法安装. defaultConfig { .... minSdkVersion 'L' .... } 解决办法 1.将compileSdkVersion设置成为 compileSdkVersion 'android-L' 这个解决方案只适用于L版本,如果尝试部署…
Q1:Error:(93, 12) 错误: 需要常量表达式 问题描述:这个问题是在添加一个module到项目中时遇到的,主要原因是因为原来module中的R文件是不会以final形式存在的,但是在module中的一些代码里对R中的数据使用了switch,而switch必须使用final常量: 解决方案:将switch改为if/else就可以了. Q2:Error:Execution failed for task ':app:transformClassesWithDexForDebug'.>…
前言: Java 8推出已经将近2年多了,引入很多革命性变化,加入了函数式编程的特征,使基于行为的编程成为可能,同时减化了各种设计模式的实现方式,是Java有史以来最重要的更新.但是Android上,一直没有看到支持Java8的消息.Android到底会不会支持Java8呢?答案是肯定的,Android N已经开始支持Java 8 了. 关于Java 8 (1.)使用Lambda表达式 Java 8的一大亮点是引入Lambda表达式,使用它设计的代码会更加简洁.当开发者在编写Lambda表达式时…