你的位置:首页 > 操作系统

[操作系统]Android中support

  这个疑惑起源于我在AndroidStudio(2.0)中新建项目后,项目中自动添加了support-v7和support-v4的引用。新建项目时,minSDK选的是API 15,也就是Android4.0.3,我的意图是只支持此版本及以上版本,为什么会给我自动添加support包呢?我一直认为supprort包是用来支持超低版本(API-4到API-11)。一种说法是自动添加support包是项目模版的行为,跟API级别没关系,这个说法我刚开始差点就信了。直到我知道了support包中包含的一些确切内容,比如在API-11中新增了Fragment,这个功能也被添加到了support-v4中用来支持低版本的系统也能使用Fragment,但是在较新的API-21中又新增了SharedElementCallback,然后在support-v4中也新增了这个类,回到最初的场景,在新建项目时我选择了minSDK为API-15,如果项目没有自动引用support包,那么我将无法使用这个类(当然也可以把minSDK改为API-21,显然这样做你会被老板痛批一顿)。到此,部分疑惑解开了,那就是support包中不仅包含了像API-11中新引入的Fragment,还包含了后续的相关的更新,这些更新是在后续的某个SDK版本中添加的(同时也被添加到了support包中),而我们不太可能把minSDK设置为较新的版本,所以就引入support包来使用同样的功能。