Android开发生命周期设置

时间:2012-02-21 23:41:54

标签: android

我一直在做很多研究,试图建立我的开发环境,以生成高度可维护的代码。我发现了很多用于Java / Android的工具,我研究或尝试使用的越多,似乎我最终会在圈子里跑来跑去。有没有人可以给我这些东西的可靠建议?我的很多搜索结果都已过时和/或部分过期。他们最多只给我一个设置,但彼此不能很好地工作。

我试图整合到我的开发中的工具:

  • 代码覆盖率
  • TDD
  • 构建工具
  • 依赖注入
  • 兼容性库
  • 持续集成

我希望在我的项目中有一个很好的MVC结构,并且有适当的对象范围,所以我发现了Roboguice / Guice并使用接口/抽象类来公开底层实现的API。到目前为止,我对我工作得很好,但还没有进行测试。我需要一个较旧的SDK兼容的Action Bar,所以我在Android Office Hours中引领了ActionBarSherlock。我可以很好地添加Android库项目。

然后我发现(至少对于当前的稳定版本)你必须做一些操作才能让它与Roboguice一起工作,因为兼容性库。该解决方案指向使用Maven来处理依赖项。所以我考虑将我的Android项目转换为Maven Android项目(这是我考虑做的事情,无论如何都要进行更清晰的项目依赖管理)。现在我相信我有Maven,Android和Eclipse(是的,我忘了,Eclipse是这个等式中的另一个变量)可以一起工作。但是现在我在使用ActionBarSherlock库时遇到问题,因为当导航提到时,通过apklib类型的依赖项导入它。不能“查找符号:class FragmentActivity”为例。我尝试使用“target / unpack / apklibs /”Maven生成一个新的Android库项目,但只能让空的Android项目缺少AndroidManifest.xml。

然后我试着找到如何为我的测试套件添加代码覆盖率,我找到了Emma,EclEmma和Robotium。似乎只有那些与Ant构建“工作”的人,特别是我只阅读了Emma的东西,似乎需要对默认的Android文件进行重大修改并构建脚本以支持代码覆盖率报告。我现在对前进犹豫不决,因为我不想破坏我的Android开发基础,追求旧的建议,它需要Ant而不是Maven,但我早期的工作需要Maven。

我对提出这样一个问题犹豫不决,因为它似乎很宽泛,但它们是开发生产代码的重要工具,所以人们必须使用它们,我似乎无法弄清楚如何获得它们的一个很好的子集同时工作。对这个问题有经验吗?

1 个答案:

答案 0 :(得分:1)

这更像是旁注。您提到的所有工具都很棒,但请记住,所有这些工具都需要为您的应用添加批量。我的经验法则是:增加重量不超过150-200K。所以我倾向于使用简单的内置包。我对代码的可重用性有了更多的了解,我对任何代码重复都非常挑剔。所以,重构,重构和重构。 Eclipse为它提供了很棒的设施