2010-05-17 24 views
8

我在Android手機上安裝了幾個免費應用,然後「升級」到付費完整版。我的第一個直覺就是創建兩個具有相同包名的應用程序,以便安裝一個覆蓋另一個,但市場中的應用程序必須通過包名來唯一。向Android Market發佈相同應用的免費和付費版本的選項和最佳做法

什麼是共享代碼和資源,對於這種情況下的工作以及相同的應用程序的免費和付費版本和任何命名約定或項目結構的一些模式和最佳實踐?

+0

有一個更近期的答案似乎更簡單的實現http://stackoverflow.com/questions/3062946/how-can-i-use-the-paid-version-of-my-app-as- a-key-to-the-free-version/3069973#3069973 – rds 2011-03-24 17:00:19

回答

-2

每個應用程序必須有不同的包名稱,否則它被認爲是「升級」。市場對這條規則非常黑白(我發現了困難的方式)。

對我自己而言,我喜歡在市場上看到的應用程序以遊離形式,其始終保持可用,永遠免費。它可能缺乏應用程序的付費版本中提供的某些功能,我可能很樂意下載付費應用程序,一旦我熟悉了免費應用程序。

6

直到谷歌出來支持許可應用程序,這就是我們爲我們的MixZing應用程序所做的事情(請注意,這假設一個服務器來執行許可證,但如果您願意失去一個許可證,它不是過程的必要部分大量的收入盜版):

  1. 創建一個「升級」應用程序,人們購買只是爲了獲得升級許可證。它沒有功能,只是啓動你的免費應用程序的主要活動(可選額外的,表明它正在從升級應用程序啓動)。

  2. 讓你的免費應用程序提示他們升級許可證密鑰用戶一旦它看到升級的應用程序已安裝完畢。許可密鑰是Google Checkout訂單號。

  3. 當用戶輸入時,讓服務器驗證許可證。您可以使用Checkout API來執行此操作。

一些注意事項和警告:

  • 由於市場的24小時取消政策,你必須做好準備,接受許可時,他們首先進入它(假設當然這是一個有效的訂單號碼),然後將用戶重置爲免費版本(如果他們取消)。

  • 你需要跟蹤許可證,並確保人們不共享。

  • 我承認,保持客戶端和服務器上賽道的這一切,讓狀態機右等就是更多的工作比我們最初想象的。

  • 我們給用戶一個爲期三天的寬限期進入他們的許可密鑰,在此期間他們使用的高級功能。

  • 由於我們將許可證綁定到設備ID,因此在人們更換手機時刷新ROM,更改設備ID等等時,會有相當程度的支持。當然,您不必根據設備製作許可證,以及通過自助服務選項來轉讓許可證將在我們完成後節省大量工作。

總而言之,如果谷歌支持許可應用程序並節省開發人員和用戶的麻煩,這將是非常好的!

+0

有趣的方法,並且非常感謝所有的細節。我將瀏覽API以瞭解可用於發現哪些軟件包已安裝以及任何其他「系統反射」寶石可用的方面,因爲我還沒有用過這些軟件。我會說,我已經「升級」的兩款遊戲沒有什麼特別,所以我想他們正在做一些事情,比如檢查高級版本,發射它的意圖,然後自己調用完成(一個實際上崩潰了簡歷,所以這樣就會讓一些動態/黑客行爲發生)。 Thx再次。 – Rich 2010-05-17 19:16:06

相關問題