Appcompat_V7问题

最后更新于:2022-04-01 16:15:44

### 问题描述: 首先遇到的问题就是adt版本的选择,sdk版本的选择: adt按非小白朋友说的选了最新的ADT-22.3.0,同时我也把sdk更新到了最新的(嗯,这个要fanqiang,或者找离线包)。很开心啊,觉得可以开始啦,于是新建Android项目,next--》next。。。finish!项目生成!(当然中间要填写东西) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-18_56c5a94e9edda.png) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-02-18_56c5a94eb462a.png) 项目建成了,发现Eclipse自动生成了一个奇怪的项目Appcompat_V7项目,再创建一个Android项目时,又会再多出一个appcompat_v7_2,如果再次创建,会以此类推地创建出appcompat_v7_x格式的“多余项目”出来(此情况在ADT升级为22.6.x版本后出现,22.3.x前的版本不会有)。处女座的我看着很是别扭,于是就百度google各种搜啊,终于找到了原因。 ### 问题原因: ADT在22.3.x版本前没有出现该情况,升级为22.6.x版本后,才出现该情况,可以猜测是新版本导致。猜测到原因后可以分析下appcompat_v7是用来做什么的,展开appcompat_v7项目,会发现有一个readme.txt文件,双击查看,该文件描述如下: Library Project including compatibility ActionBar. This can be used by an Android project to provide access to ActionBar on applications running on API 7+. There is technically no source, but the src folder isnecessary to ensure that the build system works.  Thecontent is actually located in libs/android-support-v7-appcompat.jar. The accompanying resources must also be included in theapplication. 字面意思大概可以看出,该项目是一个Library Project, 作用是让你的Android Project 在API7+的sdk版本(即Android2.1版本)可以访问ActionBar的API,ActionBar相当于用户界面的操作栏,具体ActionBar的解释可以参考:http://developer.android.com/guide/topics/ui/actionbar.html。所以从中可以看出多出这个project是为了兼容低版本的sdk 解决方法: 方法一、由于这个项目是为了兼容低版本速sdk生成的,那么只要在新建项目时将最低版本都选为Android4.0以上即可; 方法二、不是在adt更新到22.6.x版本后才出现的码,22.3.x前的版本不会有,好那就放弃新版本,换回老版本22.3.x。在[我的网盘](http://pan.baidu.com/s/1c0vlnMC)中可以下载到。 当然,问题不会就这么轻易结束,下回再说。 参考: http://blog.sina.com.cn/s/blog_9653ee0f0101jeaf.html
';