3

我正在为 Android Marketplace 计划一个应用程序。

首先,我想将它作为免费 RC 发布以进行公开测试,以在我将完整应用程序作为付费应用程序发布之前收集一些反馈。当 RC 被完整版取代时,我将发布一个有一些限制的免费 Lite 版。

计划是添加一组基本功能,对 RC 没有任何限制

以后会有

  • 具有更多功能的完整付费版本
  • 具有与 Full 相同的功能但有某些限制的 Lite 免费版本。

我正在寻找一些关于如何规划我的项目结构的建议,以避免随着应用程序的发展而对代码进行大量重构/移动。

这样的事情看起来合理吗?

  • 一个主分支
  • RC 免费应用程序源自 MAIN 分支,准备就绪后发布到 Market
  • 当 RC 生命周期结束时,来自 RC 的所有更改都合并到 MAIN 分支中,并且 RC 分支停止。RC 应用程序现在也从 Market 中撤出。
  • Lite 免费应用程序源自 MAIN 分支,一些限制适用于 Lite 分支
  • MAIN 分支现在是完全付费应用的分支。当完整版应用程序的新版本准备就绪时,更改将合并到 Lite 分支中,以便添加新功能而不会删除任何限制。
4

2 回答 2

1

前段时间我遇到了同样的问题,我决定采用以下结构。(我有一个 LITE / PAID 版本的应用程序)。

我对两个版本都使用了一个代码库,多亏了 maven,我可以做到这一点。有了它,我可以构建我需要的目标版本。

我的 Maven (pom.xml) 配置为创建一个全新的源库、重构包名称、更改 AndroidManifest、替换图标、替换属性文件、使用右键构建和签名 APK 全部使用单个命令行:

mvn install -Dedition=lite -P release

我认为这是一个很好的解决方案,唯一的缺点是需要一些工作来正确配置您的 pom.xml(尤其是如果您不太了解 maven)。

希望这可以帮助

于 2012-10-19T18:56:15.400 回答
0

如果您(更)熟悉/熟悉Eclipse ADT,那么设置一个库项目和两个依赖项目(精简版、完整版)可能是另一种方式。firstlightassociatesdonnfelker的详细信息。

  • com.example.myapp-包含所有代码和运行时检查包名称以打开/关闭特定功能的Android库。
  • com.example.myapp.full- 安卓应用程序。任何完整版本的特定资产。
  • com.example.myapp.lite- 安卓应用程序。任何精简版特定资产。
于 2013-01-18T09:38:24.403 回答