5

在我的应用程序中,我想为我的应用程序实现试用版和完整版功能。在这个试用版中,所有用户都可以使用完整版,付费完整版的用户可以使用完整版。所以请建议我可以通过哪些方式来实现这些功能?

4

4 回答 4

5

有两种方法可以做到这一点,我能想到:

  1. 构建 2 个版本的 apk 文件并发布两次到 Android Market。
    • 一个是试用版,启用广告或功能有限
    • 第二个将作为付费应用程序提供,解锁全部功能。
  2. 将应用程序作为试用版发布,并添加对应用程序内购买的支持,以解锁应用程序的全部功能。这通常被称为免费增值 ( http://en.wikipedia.org/wiki/Freemium ) 类型的应用程序。

我推荐第二种方式,因为用户只需下载一次应用程序。

请参阅此处的 Android 应用内计费文档:http: //developer.android.com/guide/market/billing/index.html

希望这可以帮助。干杯!

于 2012-06-19T09:51:29.183 回答
4

其他答案不是我所说的“审判”。概述的解决方案更像是“Lite”与“Pro”应用程序方法。

我认为试用是一个功能齐全的应用程序,在 X 天/周后到期。

于 2013-08-04T12:09:03.367 回答
4

我多次遇到同样的问题,所以我决定开发一个Android 试用库,您可以简单地将其放入您的项目中,它将为您处理所有服务器端管理(包括离线宽限期) .

要使用它,只需

将库添加到主模块的build.gradle

dependencies {
  compile 'io.trialy.library:trialy:1.0.2'
}

onCreate()在您的主要活动的方法中初始化库

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    //Initialize the library and check the current trial status on every launch
    Trialy mTrialy = new Trialy(mContext, "YOUR_TRIALY_APP_KEY");
    mTrialy.checkTrial(TRIALY_SKU, mTrialyCallback);
}

添加回调处理程序:

private TrialyCallback mTrialyCallback = new TrialyCallback() {
    @Override
    public void onResult(int status, long timeRemaining, String sku) {
        switch (status){
            case STATUS_TRIAL_JUST_STARTED:
                //The trial has just started - enable the premium features for the user
                 break;
            case STATUS_TRIAL_RUNNING:
                //The trial is currently running - enable the premium features for the user
                break;
            case STATUS_TRIAL_JUST_ENDED:
                //The trial has just ended - block access to the premium features
                break;
            case STATUS_TRIAL_NOT_YET_STARTED:
                //The user hasn't requested a trial yet - no need to do anything
                break;
            case STATUS_TRIAL_OVER:
                //The trial is over
                break;
        }
        Log.i("TRIALY", "Trialy response: " + Trialy.getStatusMessage(status));
    }

};

要开始试用,请致电mTrialy.startTrial("YOUR_TRIAL_SKU", mTrialyCallback); 您的应用密钥,试用 SKU 可在开发人员仪表板上找到。

于 2017-04-17T10:16:44.243 回答
2

您还应该看看Android 的 Application Licensing。我不确定这是否完全符合您的想法,但我相信您可以调整您的需求以使其适合您,我会说这将是正确的解决方案。

于 2012-06-19T09:58:44.820 回答