【问题标题】:The best way to make premium version of application?制作高级版应用程序的最佳方式?
【发布时间】:2015-04-28 08:57:12
【问题描述】:

现在确实遇到了一个问题,如何通过新功能集实现应用升级到高级版更好?明确表示我将使用 In app billing V3 进行购买,但我对其他东西感兴趣。我有两种变体怎么做。

  1. Google Play 上有两个应用程序(免费版和高级版)。但我认为我将无法上传两个具有相同包的应用程序。
  2. 在一个项目中创建两个包。它就像 com.example.free 和 com.example.pro 。但我不知道我将如何能够:如何更新已经存在的应用程序(不丢失数据),因为我已经改变了项目的结构,而且在很大程度上,这将是一个新的包,在你的oppinian,最好的用于切换包裹的机制,经过验证,是否完成了购买。谢谢。

【问题讨论】:

标签: android in-app-purchase google-play


【解决方案1】:

试试 Gradle Flavours,它们可以让你用不同的包名创建不同的 apk。这个视频对我帮助很大:https://www.youtube.com/watch?v=7JDEK4wkN5I

【讨论】:

    【解决方案2】:

    有几种方法。正如你所说,你不能有两个不同的应用程序具有相同的包名称。

    但是,例如,您可以让两个不同的应用使用 android:sharedUserId 共享同一个 UID,这意味着它们可以访问彼此的数据。这意味着高级应用程序可以直接从基本应用程序读取数据,或者将其迁移到自身,以防用户想要卸载基本版本。高级应用程序可以禁用部分基本应用程序以避免重复条目(例如启动器活动等)。根据执行方式的不同,您最终可能会遇到两个应用程序都需要保持安装状态的情况,这可能会让人感到困惑。

    另一种选择是将所有功能都放在同一个应用程序包中,但为基本用户锁定其中的某些部分,而高级包只包含解锁高级部分所需的某种密钥。 在实践中,这可能意味着高级包可能有一个启动器活动,该活动在首次启动时执行解锁(例如,将某些内容写入基本应用程序拥有的数据库)然后禁用自身,使其从启动器中消失。但必须注意确保这种方法的安全,以避免未经授权的解锁。

    【讨论】:

      【解决方案3】:

      使用一个应用并设置不同的用户访问权限。具有高级访问权限的用户可以获得高级和免费功能。普通账户可以获得免费功能。您可以从 Spotify 的应用中获得灵感。

      所有访问权限都可以在服务器中定义。当用户登录时,将检索访问权限。您的应用可以检查访问权限并为用户定义可能的功能。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-09
        • 1970-01-01
        • 2010-11-06
        • 2014-03-11
        • 2011-03-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多