安卓应用内产品中,"managed"和"unmanaged"有什么区别?

26

我查看了开发者论坛,了解到托管和非托管应用内商品的区别。他们表示:"非托管商品的交易信息不会存储在Android Market上,这意味着您无法查询Android Market以检索购买类型为非托管的商品的交易信息。您需要负责管理非托管商品的交易信息。" 这是什么意思?当我测试托管和非托管的应用内商品时,从服务器得到了适当的响应,我的商家帐户中也显示了托管和非托管应用的订单。请帮助我了解这两者之间的区别。

2个回答

79

未管理(UnManaged) 可以理解为"购买50个点数"

这个50个点数将被加到您的账户上,然后存储在您的账户服务器上,因此Android市场不再需要知道您购买了这个产品,也就是说它不会记住您的购买记录,您可以多次购买。

已管理(Managed) 可以理解为"购买这首歌曲"

在这种情况下,您没有一个服务器来记录他们购买了这首歌曲,所以每次重新安装时,您可以查询市场以查看他们是否购买了这首歌曲,如果他们购买了,它将不会让您再次下载。


已管理(Managed) 用于 一次性下载 然后你 '拥有该对象'。

未管理(UnManaged) 用于 多次下载 同样的东西以 '补充数量'。

至少这是我的理解。


版本3 引入了'可消耗'的概念,并与上述内容相结合。所有产品都是 已管理(Managed) 的, 但您可以 '消耗' 一个产品。

例如 "购买50个点数" 将为用户提供五十个 已管理(Managed) 的点数,直到您 消耗 该产品之前,用户将无法再次购买该物品。

因此,您可以通过立即消耗来创建 未管理(UnManaged) 的产品,或通过在用户 '使用' 该产品时消耗来创建 已管理(Managed) 的产品(即不要对购买歌曲调用消耗)。


如果我们在市场上使用非托管产品,会对计费产生任何问题吗? - Andro Dev
未受管理的产品在市场上有什么限制吗?它们是否有任何限制,例如只允许50次下载或60次之类的限制? - Andro Dev
我不知道,但我怀疑没有限制。 - Blundell
我已经在我的应用程序中实现了应用内购买。场景是这样的,一旦用户点击购买按钮,我们会给用户5个MP3。如果用户播放了所有5个,他的计划就结束了,再次需要点击购买按钮购买5个MP3。我创建了一个非托管项目作为应用内产品,因为用户需要多次购买。我阅读了文档,说Android市场不支持订阅和自动续订。我们为我们的应用程序实现的场景就像订阅一样。如果我在我的项目中实现这个场景,Android会禁止我的应用程序吗? - Andro Dev
10
对于 API 版本 3,这个情况已经不再适用,所有产品都应该在“托管”下。为什么是这样的原因可以在官方文件中找到:http://developer.android.com/google/play/billing/api.html#consume - Oliver Dixon
显示剩余2条评论

7

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接