将支持库添加到Android项目

Dew*_*oel 24 eclipse android android-support-library

为什么我很难进入Android开发阶段?多年来我一直在用各种语言进行开发,出于某种原因,似乎无法超越Android的"jeez-i-still-a-total-noob"舞台.

所以我想在我的Android 2.3.3项目中添加一个Action Bar.没问题,对吧?Android开发者网站有一篇很好的文章解释了如何做到这一点.当然,它涉及添加appcompat v7支持库.没问题,即使这是在此页面上逐步记录的.但是,就像在Android中几乎所有这样的练习一样,我发现你可以完全按照页面告诉你做的那样,如果没有大量的谷歌搜索来修复你之后遇到的错误,它仍然无法工作.

所以我按照上面链接中"使用资源添加库"一节中的"使用Eclipse"中的步骤进行操作.我得到的第一个错误是无法解析目标'android-16'.没问题,这个我可以为自己弄清楚,但我很好奇,我一直在关注的文件中有什么东西可以告诉我我需要安装Android 4.1.2(API16)吗?我是刚刚读完它还是我自己知道,为了做我想做的事情,我需要API16?

没关系,至少我可以解决这个问题,但后来我遇到了一个新问题.一旦我将android-support-v7-compat库添加到我的项目并单击OK按钮,控制台输出就会出现错误,第一个是:

C:...\android-support-v7-appcompat\res\values-v14\styles_base.xml:24:错误:检索项目的父项时出错:找不到与给定名称匹配的资源'android:Widget.Holo.ActionBar ".

和其他60个奇怪的错误是相似的,但对于不同的给定名称.

如果有人能帮助我,我真的很感激.显然我想知道如何解决这个特殊的问题,但如果有人能给我一些关于如何通过这个非常令人沮丧的阶段学习这个新的开发环境的技巧,我会非常感激.除了按照Android开发者网站上的说明一步一步地执行这些错误之外,我应该做些什么呢?

Dew*_*oel 22

好吧,我想我应该发一个答案,因为我最终设法解决了我自己的问题.

事实证明我必须使用Android 4.2.2的构建目标,无论我是专门为Android 2.3.3开发的事实 - 我的意思是,这就是为什么我毕竟使用支持库.我想有可能一些其他较低的目标(但高于2.3.3)仍然可以工作我只使用我安装的最高目标并解决了问题.

我应该如何通过Android开发者网站上的分步说明来了解这一点对我来说是一个谜.我决定尝试更改targetSdkVersion的原因是因为问题中引用页面中的最后一部分.它显示"如果您通过支持库增加现有应用程序与早期版本的Android API的向后兼容性,请确保更新应用程序的清单." 现在我没有增加现有应用程序的向后兼容性.我正在更改一个针对2.3.3的现有应用程序,以便能够包含一个Action Bar(看起来更像是"向前兼容性").我尝试升级targekSdkVersion虽然我没有想法,但是看,它有效.

  • 以防它帮助某人...我在一个新项目的新工作区中创建了appcompat库项目,我在导入代码时遇到了"无法解决目标'android-16'"错误.我发现的解决方案是将android:targetSdkVersion更改为我的主项目所需的内容(18个使用Google API).然后我再次关闭并再次打开库项目,一切都很好. (7认同)