5

是否可以在SharedPreference中設置值以標記用戶已購買此項目?如果用戶在SharedPreference中入侵此值,該怎麼辦?或者我需要每次連接IAP服務以檢查在用戶可以使用它之前?Android應用程序內購買,如何檢查用戶是否購買了一個項目

(1)當我使用Google Android IAP V3時,最佳做法是什麼? (2)如果用戶的設備沒有安裝Google Play,我可能想使用PayPal進行付款,但如果我要求用戶使用簡單的PayPal付款,如何跟蹤購買併爲用戶解鎖功能獲得許可證密鑰?我不想使用任何其他計費SDK,如果使用Paypal網頁購買許可證,如何實現這一點?

+0

我覺得SharedPreference是不正確的做法,因爲如果用戶已卸載應用程序,然後重新安裝它,您SharedPrefrence值將是明顯的。您應該選擇其他選項,並編輯您在問題中使用的應用內結算版本,以便任何人都可以直接根據此代碼提供代碼。 – Maulik

回答

3

從文檔:

因爲谷歌遊戲客戶端現在緩存應用程序內結算信息 本地設備上,則可以使用第3版API更頻繁地查詢此 信息,例如通過getPurchases調用。 與以前版本的API不同,許多版本3 API調用 將通過緩存查找服務,而不是通過與Google Play的網絡 連接,這會顯着加快API的 響應時間。

這基本上意味着您每次都可以查看購買內容,而Play商店應用會立即作出迴應。

5

(1)當我使用Google Android IAP V3時,最佳做法是什麼?

- >官方文檔說,只有付款交易將由谷歌播放本身,但在應用程序中,你必須設置你的業務邏輯如何處理UI集成和產品購買後的其他事情。您也可以使用應用內購買v3。 (2)如果用戶的設備沒有安裝Google Play,我可能想使用PayPal進行付款,但如果我要求用戶使用簡單的PayPal付款,如何跟蹤購買併爲用戶解鎖功能獲得許可證密鑰?我不想使用任何其他計費SDK,如果使用Paypal網頁購買許可證,如何實現這一點?

- >您可以讓用戶動態更新Google Play版本。谷歌開發人員的文檔說,超過90%的設備使用2.2操作系統與安裝谷歌遊戲商店。我不能說任何關於貝寶交易的事情,因爲我之前沒有使用它,但是在使用v3購買應用程序時,實現和理解付款過程非常簡單。

如何在應用中使用

三種方式來管理應用程序的產品數據。

1)SharedPrefrence: 可以使用共享prefrence值,並檢查其是否購買與否。如果用戶卸載應用程序然後重新安裝應用程序,那麼您可以檢查用戶是否已購買,在此處您已購買該物品。你必須管理用戶訪問你的應用程序數據。

2)本地數據庫: 您還可以使用本地sqlite數據庫來存儲購買細節和購買狀態。如果用戶清除數據或卸載應用,則再次請求購買物品,並檢查用戶是否購買了物品。

2)Server數據庫: 它是更好的方法比較上面,如果你正在使用的網絡服務器來存儲用戶數據。在這種類型中,如果用戶卸載應用程序或清除應用程序數據,則甚至不需要再次管理該情況。

3)混淆:(最有效的方法比較共享prefrence)

編輯:

是OK和安全設置的用戶已經購買了SharedPreference來標記值這個項目?如果用戶在SharedPreference中入侵此值,該怎麼辦?或者我需要每次連接IAP服務以檢查在用戶可以使用它之前?

雖然我互聯網上搜索,我發現Nikolay Elenkov's回答象下面這樣:

如果你只是保存一個標誌共享偏好,有紮根 設備的任何用戶可以隨意翻轉的標誌,成爲「訂閱「而無需付費。 所以你至少應該做一些混淆。這裏有一個sample way來做 吧。此外,還有一個API來檢查訂閱狀態,所以 您應該定期檢查以確保訂閱有效。

更多信息檢查Nikolay Elenkov's answer

什麼是最好的計費無論是在應用程序內購買或貝寶?

它是取決於產品類型,

- >在應用程序內結算:最佳爲谷歌應用程式計費,

對於數字產品,包括可下載內容例如媒體 文件或 照片,虛擬內容(如遊戲關卡或藥水),付費 服務和功能等等。

http://developer.android.com/google/play/billing/index.html

- >貝寶:最佳貝寶結算,

對於物理內容或產品你想分享。您不是 ,因爲通過此方法購買的商品必須與使用它們的 應用程序直接相關,所以您不允許使用「應用內購買」 銷售實物商品或服務。

Purchase physical product from iPhone app without Apple in app purchase

希望它會幫助你。

+0

檢查我上面編輯的答案。 – Maulik

+0

編輯在答案什麼是最好的使用應用程序購買或貝寶。 – Maulik

0

正如Kuffs所提到的那樣,最好查詢應用內結算庫的應用端實現,然後查詢設備的Google Play客戶端。這將確保最近從Google Play服務器獲得的購買歷史記錄是可靠且相對新鮮的信息。

另外,請記住,如果您在Google Play上發佈應用,則必須通過應用內結算使用Google Play付款機制。目前,Google Play和電子錢包尚不支持貝寶或有線/銀行轉帳方式,因此如果您在Play上發佈該選項,則不應該集成該選項。

http://play.google.com/about/developer-content-policy.html#payments