一、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项目说明的更多相关文章

  1. Android开发学习之路-RecyclerView滑动删除和拖动排序

    Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...

  2. Android开发学习总结(一)——搭建最新版本的Android开发环境

    Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...

  3. Android Sip学习(三)Android Voip实现

    Android Sip学习(三)Android Voip实现   Android Sip学习(准备知识)SIP 协议完整的呼叫流程 Android Sip学习(一)Android 2.3 APIs S ...

  4. Android开发学习必备的java知识

    Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...

  5. Android开发学习之路--网络编程之xml、json

    一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载 ...

  6. Android开发学习之路--Android系统架构初探

    环境搭建好了,最简单的app也运行过了,那么app到底是怎么运行在手机上的,手机又到底怎么能运行这些应用,一堆的电子元器件最后可以运行这么美妙的界面,在此还是需要好好研究研究.这里从芯片及硬件模块-& ...

  7. Android开发学习路线的七个阶段和步骤

    Android开发学习路线的七个阶段和步骤           Android学习参考路线     第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环. 2.String和St ...

  8. Android开发学习路线图

    Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...

  9. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

随机推荐

  1. linux下用gtk+写比赛赌博GUI小游戏

    游戏界面全部由gtk的GUI完成,没有使用openGL之类的高端货. 游戏玩法就是8位选手比赛跑步,你可以在赛前赌哪位选手会赢,如果输了cash会被扣除,反之cash会增加. 无聊写了3个选项:小数时 ...

  2. AngularJS进阶(六)AngularJS+BootStrap实现弹出对话框

    AngularJS+BootStrap实现弹出对话框 参考资料: http://angular-ui.github.io/bootstrap/#/modal https://www.zybuluo.c ...

  3. LeetCode之“动态规划”:Minimum Path Sum && Unique Paths && Unique Paths II

    之所以将这三道题放在一起,是因为这三道题非常类似. 1. Minimum Path Sum 题目链接 题目要求: Given a m x n grid filled with non-negative ...

  4. c/c++ 表达式求值

    表达式求值 [问题描述] 一个算术表达式是由操作数(operand).运算符(operator)和界限符(delimiter)组成的.假设操作数是正整数,运算符只含加减乘除等四种运算符,界限符有左右括 ...

  5. Graph Cuts学习笔记2014.5.16----1

    进行了一段时间的论文学习后,现在下载了一些代码,准备从OpenCV跟matlab两个方面着手搭建自己的图像分割平台,计划耗时一个月左右的时间! 昨天去西工大,听了一场Graph Asia的报告,里面有 ...

  6. 新手入门vue 使用vue-cli创建项目

    本文是针对对于完全没有了解过vue 和npm,连运行环境和项目构建的都不会的小白,对于前端老司机的就不用看了,浪费时间. 使用npm 与vue-cli 构建vue 项目 第一步:安装运行环境(node ...

  7. 如何通过jQuery获取一个没有定高度的元素---------的自适应高度(offsetHeight的正确使用方法)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. .net找List1和List2的差集

    有个需求是找两个自定义类泛型集合的差集: class Person { public string Name{get; set;} public string Country{get; set;} } ...

  9. 安装Emacs并设置racket环境

    最近在阅读sicp这本书,书中的代码是使用scheme实现的.之前阅读的时候是使用Dr.Racket来完成写练习的,可我觉得与其这样,不如一步到位,使用emacs+lisp解释器来的比较快. 安装em ...

  10. 没人看系列-----html随笔

    <!DOCTYPE> 目录 没人看系列-----html/css详解 前言 不多说这段时间写了好多好多前端的东西,以至于自己重新返回看了一遍前端的所有技术.故此做个总结,准备学东西的请绕行 ...