2013-04-29 36 views
6

我正在使用Inapp Billing v3開發具有訂閱功能的應用程序。有訪問應用程序的登錄機制。如果用戶'X'訂閱功能並註銷。如果用戶「Y」在同一設備上登錄應用程序,並且用戶試圖訂閱,Google play會告知該產品已被購買。基於帳戶的訂閱是否在設備中同步,而不是基於登錄到應用程序的用戶?如果是的話,怎樣才能實現我的方案?在單個設備中有多個用戶的應用程序 - Inapp Billing訂購

+0

您是否找到了解決此問題的方法?我面臨與我的應用程序相同的問題。 – appLogic 2016-10-20 12:15:06

回答

3

Google Play應用內結算訂閱綁定到Google Play帳戶。因此,只要Google帳戶沒有更改,訂閱就被認爲對此帳戶有效,並且您無法再購買一次。

如果您想用自己的帳戶替換Google帳戶系統,您需要「欺騙」Google Play。你可以做的是創建一個由幾個不同的應用內結算訂閱(如訂閱#1,訂閱#2等)組成的池。當您訂閱時,您將自己的登錄名作爲developerPayload字段中的附加參數傳遞。

現在,當您列舉所有可用的訂閱時,請檢查developerPayload字段中是否存在具有當前用戶帳戶的訂閱。如果不是,那麼您認爲當前用戶沒有訂閱,並且允許使用您生成的訂閱池(訂閱#1,訂閱#2等)中的第一個尚未使用的訂閱進行訂閱。只要確保您游泳池中的訂閱數量大於同一設備上的用戶數量即可。

這不是一個簡單的方法,而是一個欺騙你的情況找到workarroung。

+1

在這種情況下,錢將從主用戶的賬戶中扣除,並且任何用戶都不會接受他爲其他人支付的錢。想想看。 – Ankit 2013-05-01 04:24:26

1

目前谷歌IAB只支持一個設備上的一個帳戶(設備上的主要Gmail帳戶)。但是從Android 4.2多用戶功能可用,谷歌正在爲IAB提供相同的支持。

+0

四年後,牛軋糖仍然如此嗎? – 2017-05-08 20:14:35

+1

不確定,但現在在商店應用程序用戶可以更改gmail帳戶,它的工作原理(甚至建議基於帳戶歷史記錄)基於此用戶帳戶。 – Ankit 2017-05-12 11:59:55

相關問題