1

背景: 我正在开发一个几年前发布的应用程序。现在,我的应用有相当大的用户群。因为在推出时我只有一个免费版本,所以到现在为止我没有配置产品口味。让我们假设我的应用程序ID是com.company.appAndroid产品口味与独特的应用程序ID

问题:

多年以后,现在我要介绍的应用程序的付费版本,我要使用产品口味 - 付费和免费

productFlavors { 
    free { 
     applicationId 'com.company.app.free' 
    } 
    paid { 
     applicationId 'com.company.app.paid' 
    } 
} 

问题1:按照Android文档,谷歌Play商店会将我的应用程序作为一个全新的应用程序,如果我改变我的应用程序ID。如果我使用上述产品风味块,我是否会放弃当前的商品详情和用户群?但是,既然它只是一种产品味道,那它有什么关系?

问题2:我是否需要在产品口味中使用不同的应用ID?我可以在两种产品口味上使用当前的应用程序ID吗?

感谢

回答

1

答1:你将不得不在商店两个独特的应用程序。他们将作为两个应用程序处理,没有任何关系。

答案2:您可以使用相同的产品ID。一个简单的解决方案是将付费版本的布尔资源值设置为true,并检查是否在应用程序中添加了一些高级功能 - 您可以使用resValue来实现付费风格。

+0

谢谢纳坦。我想根据产品口味保留不同的源代码集和依赖列表(注意:付费版本不需要保留任何广告网络依赖性和广告相关源代码)。在两种产品口味上保持相同的应用程序ID,我不会错过任何功能,对吧?请确认。谢谢 – OrangeTree

+0

这是正确的。如果答案对您有帮助,请将其标记为已接受。谢谢! – Natan

0

您可以添加支付功能将现有的应用程序而无需改变ID(包名称)

乘坐锁应用内结算https://developer.android.com/google/play/billing/index.html

申请将只是一个,同样的几年前发布。 对我来说,这是免费/付费选择的最佳解决方案。比口味好多了。

0

您可以为不同的风格创建不同的源集,还可以为特定的构建变体配置依赖关系。用几句话就很难有清楚的解释,你可以从here 清楚地知道它。