2011-02-02 27 views
2

我已经开发了一款游戏,打算将其作为付费应用程序发布,并使用Android LVL和默认ServerManagedPolicy许可策略。现在,决定我们必须将其作为免费应用发布的权力。出于某种原因,我不想删除/禁用许可证检查。我的问题是:许可服务如何处理免费应用程序?将检查总是失败或总是通过?有什么办法可以让许可证服务接受我的免费应用程序许可的任何安装?免费应用程序客户端许可证有效性检查的LVL行为

我在官方文档的免费应用程序中发现了以下内容,但它对我没有多大帮助。

Only paid applications published through Market can use the service.[...] Licensing is currently for paid apps only, since free apps are considered licensed for all users.

我都会以为,检查将失败,但是,我记得读书的地方,免费的应用程序许可服务器会返回一个非常大的有效性时间戳(long.MAX)确保许可证始终有效免费的应用程序。不幸的是,我已经失去了与该来源的链接。

注意:问题并不像听起来那么疯狂。这只是我无法进一步解释我的用例,而不会泄露一些专有信息。

+1

以下是您要查找的关于有效性时间戳的链接(long.MAX_VALUE)http://developer.android.com/google/play/licensing/licensing-reference.html#lvl-summary – Thupten 2016-05-04 15:44:03

回答

3

我只是处理相同的问题,我发现这里的信息已经过时,所以我给你更新的版本。 现在可以上传apks以获取请求com.android.vending.CHECK_LICENSE权限的免费应用程序。但是,这并不意味着您的应用程序可以真正使用它。在许可概述处于“要求和限制”

  • 说,你可以实现授权控制了免费的应用程序,但只有当你正在使用的服务来提供APK扩展文件。

我不知道这个,我反正试了。上传工作正常(虽然它是一个免费的应用程序,我没有任何扩展文件),但用户没有得到许可服务的回应。令人困惑的是,当您使用开发者帐户登录时,您会收到您在开发人员档案中选择的测试响应,因此可能认为所有的工作都可行。

3

在这里没有得到任何答案,我在Android Developers组上发布了同样的问题。这里是最好的回答我:

技术上后端许可证服务器允许它并返回一个大的有效性 时间戳,但是...... 市场发布商控制台不会允许你上传的APK是免费的 并请求com.android.vending.CHECK_LICENSE权限。

实际上,这意味着免费应用程序不能使用LVL,因为您不会 能够上传它们。

特雷弗·约翰斯,开发者计划工程师,Android的

3

拉到这个直发牌教程:

考虑,对于免费应用

许可目前仅 付费应用程序的支持。如果你已经 发布您的应用程序免费, 你将无法上传更新 版本,其中包括许可(即 是,使用相同的 包名和包括 许可权限的应用程序)。这里有一些 点要牢记:

如果你要提供你的应用程序的一个免费版本, 提供了一个简化的功能集(或 ,它提供了全功能的 试用期设置),免费版本 您的应用程序不得包含 许可权限,并且必须使用 与应用程序的付费 版本不同的软件包名称。 如果您想要提供 使用许可的免费应用程序的付费版本,则可以在 新的软件包名称下执行此操作。

你记得读什么大概是这样的:

对于一个免费的应用程序, 设置有效期到非常 高值(long.MAX_VALUE)服务器。这 确保,如果政策有 本地缓存有效性时间戳, 它将不需要在 未来重新检查应用程序的许可证状态 。

这是关于这个:

服务器认为用户许可 如果用户被记录到有 购买的应用程序,或者如果 应用程序是免费提供的。

相关问题