【问题标题】:How do you release two versions of an app on the Market?您如何在市场上发布两个版本的应用程序?
【发布时间】:2011-06-18 02:04:38
【问题描述】:

我想将我的应用的两个版本添加到 Android 市场,一个只需几美分,另一个是免费版本,带有广告。这是很常见的做法。

我目前正在将 AdMod 构建到我的应用中,看来我必须更改很多文件,因此最好为此制作我的应用的单独版本。

你是如何做到这一点的?分店?不同的存储库?有没有人找到一种方法以合理的方式将两个应用程序保存在同一个存储库中?

标题没有拼错,我的意思是“实现”,即人们如何管理这两个版本,而不是他们如何将它们添加到市场。

【问题讨论】:

    标签: android version-control google-play


    【解决方案1】:

    人们通常将它们上传两次(就像两个不同的程序),然后只修改标题以添加诸如无广告、捐赠之类的内容。在免费版本上,只需添加免费标签,并加上广告支持的说明。

    以下是 SMS Popup 应用程序的示例:

    对于 Android Market,它们被认为是不同的程序,但对我们来说是一样的,但一个支持广告,另一个不支持。

    【讨论】:

    • 我认为他的意思是如何让两个版本的开发保持简单。所以他不必仅仅因为他想要两个版本而分别修改这两个程序。我还假设这两个版本实际上是相同的,除了广告。
    • 是的,ontrack 是对的。但是有人编辑了标题,从而改变了问题,难怪内森弄错了……
    【解决方案2】:

    这种事情是一场彻头彻尾的噩梦——不幸的是,Android 构建系统并没有以任何好的方式真正支持它。

    我们通过将 99% 的应用程序代码放在一个库项目中来做到这一点。然后,我们为每个不同版本的应用程序创建一个应用程序项目,每个版本都使用该库。

    当我们需要不同版本的应用程序以不同方式表现时,我们目前通过在运行时查询不同的资源来实现这一点。然而,我们正在转向通过 RoboGuice 使用依赖注入。

    其中有些元素可以很好地工作,而其他元素则不能。例如,有必要复制 AndroidManifest.xml 文件,这很容易出错(例如,很容易将新活动添加到一个清单中而忘记在其他清单中这样做)。不幸的是,这是一团糟,但我们找到了最不坏的解决方案。

    就个人而言,我强烈建议不要使用分支来达到这种效果。它们最初可以很好地工作,但很快就会成为维护的噩梦。

    使用库的另一个好处是我们发现它使测试变得相当容易。有关如何设置的示例,请参阅:

    http://www.paulbutcher.com/2010/09/android-library-project-with-tests-step-by-step/

    【讨论】:

    • 我认为谷歌曾一度推荐使用库来做到这一点。
    • 图书馆项目要走的路,我不会说这是一场噩梦。它非常适合这样的事情。这也可以帮助您入门developer.android.com/guide/developing/…
    • 很好的答案,很好的链接 schwiz!所以这是 Google 推荐的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 1970-01-01
    • 2011-06-24
    • 1970-01-01
    相关资源
    最近更新 更多