第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

創(chuàng)建在固定時間段后到期的Android試用版應用程序

創(chuàng)建在固定時間段后到期的Android試用版應用程序

慕慕森 2019-10-14 15:33:07
我有一個想要作為付費應用程序投放市場的應用程序。我想使用其他版本,將其作為“試用”版本,時限為5天?我該怎么做呢?
查看完整描述

3 回答

?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

當前,大多數開發(fā)人員使用以下3種技術之一來完成此任務。

可以輕松規(guī)避第一種方法,第一次運行應用程序時,將日期/時間保存到文件,數據庫或共享首選項中,并且每次運行該應用程序后都要檢查試用期是否已結束。這很容易規(guī)避,因為卸載和重新安裝將使用戶擁有另一個試用期。

第二種方法更難規(guī)避,但仍然可以規(guī)避。使用硬編碼的定時炸彈?;旧希ㄟ^這種方法,您將很難確定試用的結束日期,并且所有下載和使用該應用的用戶都將無法同時使用該應用。我之所以使用這種方法,是因為它易于實現(xiàn),而且在大多數情況下,我只是不想經歷第三種技術的麻煩。用戶可以通過手動更改手機上的日期來規(guī)避此問題,但是大多數用戶不會遇到麻煩。

第三種技術是我聽說過的真正能夠完成您想做的事情的唯一方法。您將必須設置服務器,然后無論何時啟動應用程序,您的應用程序都會將電話的唯一標識符發(fā)送到服務器。如果服務器沒有該電話ID的條目,則它將創(chuàng)建一個新的ID并記錄時間。如果服務器確實具有電話ID條目,則它將進行簡單檢查以查看試用期是否已到期。然后,它將試用期滿檢查的結果傳達回您的應用程序。這種方法不應該被規(guī)避,但是確實需要設置一個Web服務器等。

在onCreate中進行這些檢查始終是一個好習慣。如果到期已結束,則彈出帶有市場鏈接的AlertDialog,該鏈接指向應用程序的完整版本。僅包括一個“確定”按鈕,并且一旦用戶單擊“確定”,就調用“ finish()”以結束活動。


查看完整回答
反對 回復 2019-10-14
?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

我已經開發(fā)了一個Android試用版SDK,您可以將其輕松放入Android Studio項目中,它將為您處理所有服務器端管理(包括離線寬限期)。


要使用它,只需


將庫添加到主模塊的 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); 您的應用密鑰,然后在Trialy開發(fā)人員儀表板中找到試用SKU 。


查看完整回答
反對 回復 2019-10-14
  • 3 回答
  • 0 關注
  • 630 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號