Android开发学习总结(三)——appcompat_v7项目说明
一、appcompat_v7项目说明
今天来说一下appcompat_v7项目的问题,使用eclipse创建Android项目时,发现project列表中会多创建出一个appcompat_v7项目,这是我搭建最新的Android开发环境创建第一个Android测试项目后发现的,我在创建Android时选择的Minimum Required SDK是API:8 Android 2.2(Froyo),如下图所示:
在这里解释一下这些名词:
- SDK 是 Software Development Kit (软件开发工具包)的缩写。
- Minimum Required SDK:最低支持SDK,一般默认的是8,即使应用根本不会在那么低的Android版本上运行;
- Target SDK:目标SDK,即最高支持SDK,应用最佳运行的Android版本,不能低于Minimum Required SDK;
- Compile With:编译的API(应用程序编译接口),即当前编译应用所用的API版本(也可以理解为SDK版本),一般默认与Target SDK相同,也可以高于Target SDK。
结果创建完项目之后就多创建出一个appcompat_v7项目,如下图所示:

appcompat_v7是作为一个类库项目存在的,本身不能单独运行,而HelloAndroid项目则引用了appcompat_v7项目,继而可以使用appcompat_v7编写好的类库,如下图所示:
上网查了一下为什么会出现appcompat_v7这个项目,原来是:appcompat_v7是Google自己的一个兼容包,就是一个支持库,能让Android2.1以上全使用上4.0版本的界面。而刚才我们创建项目时,选择的能够运行HelloAndroid这个Android项目的最低Android版本(Minimum Required SDK)是API:8 Android 2.2(Froyo),所以Eclipse认为我们开发的应用要能够在Android2.2版本的系统上面运行,因此自动帮我们创建了appcompat_v7这个项目。appcompat_v7这个项目我们在开发中基本上不用理会的,专心在我们自己的项目上面做开发就好了。
二、创建项目避免创建appcompat_v7项目的办法
在上面,我们已经知道了appcompat_v7这个项目为什么会被创建出来的原因,appcompat_v7是一个支持库,能让Android2.1以上全使用上4.0版本的界面。如果我们开发的应用不需要在Android4.0以下的平台运行,那么我们建项目时直接把最小SDK选在Android4.0以上,这样创建项目就可以避免多创建appcompat_v7这个项目,如下图所示:
创建项目时选择Minimum Required SDK是API:15 Android 4.0.3,如下图所示:
这就表示我们的HelloAndroid应用最低只能在Android4.0.3的系统上运行,低于Android4.0.3的Android系统就无法运行我们这个应用了。
这回创建出来的就只有HelloAndroid一个项目了,如下图所示:
也就是说:使用Eclipse创建Android项目时,如果选择的Minimum Required SDK是低于Android4.0以下的,那么Eclipse就会自动创建多一个appcompat_v7项目,如果选择的Minimum Required SDK是Android4.0以上的,那么Eclipse就不会创建appcompat_v7项目。
Android开发学习总结(三)——appcompat_v7项目说明的更多相关文章
- Android开发学习之路-RecyclerView滑动删除和拖动排序
Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...
- Android开发学习总结(一)——搭建最新版本的Android开发环境
Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...
- Android Sip学习(三)Android Voip实现
Android Sip学习(三)Android Voip实现 Android Sip学习(准备知识)SIP 协议完整的呼叫流程 Android Sip学习(一)Android 2.3 APIs S ...
- Android开发学习必备的java知识
Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...
- Android开发学习之路--网络编程之xml、json
一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载 ...
- Android开发学习之路--Android系统架构初探
环境搭建好了,最简单的app也运行过了,那么app到底是怎么运行在手机上的,手机又到底怎么能运行这些应用,一堆的电子元器件最后可以运行这么美妙的界面,在此还是需要好好研究研究.这里从芯片及硬件模块-& ...
- Android开发学习路线的七个阶段和步骤
Android开发学习路线的七个阶段和步骤 Android学习参考路线 第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环. 2.String和St ...
- Android开发学习路线图
Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...
- android开发学习笔记000
使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...
随机推荐
- ubuntu virtualbox xp无声音解决
太简单了,记录一下解决方法,进入xp,打开设备管理器,对着ac97设备驱动 点右键,点更新驱动,更新一下就ok了. 这时候去控制面板,就可以看到有音频设备了. 具体步骤如下: 第一步,virtualb ...
- 软考论文的六大应对策略V1.0
软考论文的六大应对策略V1.0 短短2个小时,要写3000字的文章,对习惯了用电脑敲字.办公的IT从业人员而言,难度不小.尤其,大家会提笔忘字.笔者的应试策略,就是勤学苦练,考试前的一个星期,摸清套路 ...
- SpriteBuilder中使用TrueType字体的一些障碍
在实践中,有一些小的陷阱和障碍可能阻止你使用一般的TrueType字体. 第一个,必须要有一个有效的字体文件.在Finder中双击该.ttf文件,应该会打开Font Book app,显示一个象形符号 ...
- 关于App启动加载广告页面思路
需求 很多app(如淘宝.美团等)在启动图加载完毕后,还会显示几秒的广告,一般都有个跳过按钮可以跳过这个广告,有的app在点击广告页之后还会进入一个广告页面,点击返回进入首页.虽然说这个广告页面对用户 ...
- Android特效专辑(四)——APP主页框架TabHost绑定ViewPager的替换者TabLayout
Android特效专辑(四)--APP主页框架TabHost绑定ViewPager的替换者TabLayout 现在很多app都在追求简单明了,功能又要强大,不过我还是喜欢之前的app风格,就是TabH ...
- git rebase之前需要commit才行
更新好本地代码后,git fetch, 接着合并,但是git rebase 不行, git status一看,有很多更新的文件. 于是 git add --后,再rebase,还是不行. 注意,reb ...
- 基于Bresenham和DDA算法画线段
直线:y=kx+b 为了将他在显示屏上显示出来,我们需要为相应的点赋值,那么考虑到计算机的乘法执行效率,我们肯定不会选择用Y=kx+b这个表达式求值,然后进行画线段. 我们应当是将它转化为加法运算. ...
- 如何oracle调试存储过程
1.打开PL/SQL Developer 如果在机器上安装了PL/SQL Developer的话,打开PL/SQL Developer界面 输入用户名,密码和host名字,这个跟在程序中web.con ...
- MATLAB坐标系中绘制图片
MATLAB坐标系中绘制图片 方法一 使用图片坐标循环的方式,代码如下. clear,clc,close all tic; map=imbinarize(imread('map.bmp'));%map ...
- JavaScript脚本放在哪里用户体验好
javascript代码写在<head>里面: 由于这时候网页主体(body)还未加载,所以这里适合放一些不是立即执行的自定义函数,立即执行的语句则很可能会出错(视浏览器而定) javas ...