如何生成免费和付费版本的签名安卓 apk?

Posted

技术标签:

【中文标题】如何生成免费和付费版本的签名安卓 apk?【英文标题】:How to generate signed android apk for free and paid version? 【发布时间】:2016-07-14 17:56:21 【问题描述】:

我已经按照以下步骤生成了一个 apk

Build->Generate signed apk->填充 kestore 值(我通过单击创建新的、指定的 kestore 路径和要生成签名 apk 的路径创建了一个 keystore 文件)-> 完成

按照这些步骤,在指定文件夹中生成了一个名为“app-release.apk”的 apk。但是没有步骤询问我是否需要付费版本或免费版本。所以我怀疑我是否遵循正确的程序?谁能解释一下如何生成付费和免费签名的apk?我是否为生成免费的 apk 版本做了正确的事情?

【问题讨论】:

这里有一个链接可以让你started Common code for different android flavors的可能重复 我是否正确生成了免费的 apk?我没有在应用程序中添加任何其他口味。 这不是生成apk的过程,而是Google Play上的设置区分免费和付费应用程序。这是另一个讨论,您希望从免费版本中删除哪些功能以使用户进入付费版本。为此,您需要不同的代码集,可以通过productFlavors 实现 所以我在上述步骤中做错了吗?生成免费的apk版本? 【参考方案1】:

在一些基本场景中,您可以执行以下操作:

build.gradle:

productFlavors 
    free 
        buildConfigField("String","VERSION","free")
        applicationId "net.app.free" //package

    
    paid 
        buildConfigField("String","VERSION","paid")
        applicationId "net.app.paid" //package
    

然后在你的代码中:

if(BuildConfig.VERSION.equals("paid"))

   //unlock paid feautre

从控制台(在主应用程序的目录中)运行一次构建所有文件,或在 IDE 中打开终端窗口并输入:

./gradlew build

所有的 apk 都会在 build 目录中找到。

在您发表评论后,这里有一些基本信息:

构建免费或付费应用程序没有强制性差异。代码没有强制性差异。两种口味都需要以同样的方式签名,以同样的方式发布。在google play中发布应用时可以设置价格,无需构建流程

【讨论】:

那么我在上述步骤中做了 ryt 来构建生产版 apk 吗?我的应用只有免费版本。

以上是关于如何生成免费和付费版本的签名安卓 apk?的主要内容,如果未能解决你的问题,请参考以下文章

同时上传具有相同代码库但签名不同的两个版本的 apk

Android 应用内计费如何以及在何处指定付费功能费用

从应用商店安装 iPhone 应用付费版本替换免费版本

无需付费苹果开发者账号即可生成ipa

如何同步 iphone 付费到免费的价格变化与应用程序版本变化?

怎样免费从论坛里下载付费附件????