簡體   English   中英

如何管理Android項目的免費和付費版本?

[英]How to manage free and paid versions of an Android project?

我決定構建我的免費Android應用程序的付費版本。 付費版本有一些額外的功能。 如何管理這兩個版本?

  • 是否可以根據相同的源代碼保留它們?
  • 如果應用程序需要唯一的軟件包名稱,如何強制付費應用程序替換免費版本?
  • 那么db,偏好和其他私有存儲的東西,如何在不將所有數據暴露給世界其他地方的情況下共享它們呢?

任何有助於管理這兩個項目的建議,但不能直接回答上述問題,也是值得贊賞的。

有幾種方法:

  1. 將應用程序的核心放在庫項目中,並創建另外兩個項目,一個用於付費,另一個用於免費版本的應用程序。 升級到付費版本意味着用戶必須卸載免費版本,並丟失所有數據。
    這是“經典”方法。
  2. 讓用戶進行應用內付款。 用戶保留所有數據庫和設置,您只需維護一個應用程序。
    此選項需要在您的應用程序中包含額外的模塊,以及額外的邏輯。
  3. 制作另一個虛擬/空應用程序,這是一個付費應用程序。 此應用程序的存在意味着用戶具有付費版本。 用戶繼續使用原始/免費應用程序。
    您只需使用PackageManager進行檢查即可查看付費應用是否已下載。
    用戶保留所有數據庫和設置,您只需維護一個應用程序。 好的,有兩個應用程序,但第二個可以非常小而簡單。
    您不必包含其他庫/代碼即可進行應用內付款。 您還可以通過一次購買將所有應用升級到“專業版”。
    我不知道所有用戶是否都理解這種模式。 對於開發人員來說,這可以通過最少的工作來實現,並且用戶在升級時保持他們的所有設置。

我認為可以並且建議將它們保存在相同的源代碼中。 否則,您必須支持兩個版本的應用程序而不是一個版本。

如果您只有一個應用程序,那么您只有一個包名稱。

在當前許可證狀態(免費或付費)中創建一個負責應用程序功能可用性的類。 此類應存儲有關許可證狀態的信息(免費,付費,您可能希望將來添加訂閱模式,其中付費版本可能會在一段時間后過期)。 您的應用程序的功能僅在付費版本中可用,請檢查當前許可證狀態。 您還可以根據許可證狀態更改應用程序GUI。 例如隱藏付費功能的GUI,顯示“購買”按鈕或廣告等。

此外,如果您只有一個可以免費或付費的應用程序,則無需在付費和免費版本之間共享任何內部應用程序數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM