用户是否必须在升级/安装时授予com.android.vending.BILLING权限?

我计划为我的某个Android应用整合Google Play 应用内结算

为了使用应用内结算,需要将权限com.android.vending.BILLING添加到AndroidManifest。

我的问题是,用户是否必须在安装或升级时授予此权限?

我没有看到它使用它的应用程序。 所以,我只是想知道包含新的结算权限的更新是否会在没有询问用户的许可的情况下推出? 后者通常意味着旧版本卡住了。

问候,Joerg

Solutions Collecting From Web of "用户是否必须在升级/安装时授予com.android.vending.BILLING权限?"

我使用Google Play开发者控制台的alpha版本机制来自行testing。

我可以确认用户将被提示要求额外的权利。 因此,添加应用内结算时不会自动升级。

这就是Google Play中的权限。 (如果它是新的,它将有正常的新:标志)

在这里输入图像说明

在一般情况下,当一个已经安装的应用程序有新的权限的新版本,自动更新将被禁用,用户将被要求手动更新该应用程序(即按更新button)。 当手动更新的时候,他们会被告知有一些新的权限被请求,他们可以select是接受(更新应用)还是取消(不更新)。

如果计费许可触发了这个问题,你是否担心用户不会主动更新,从而在旧版本上“卡住”? 我认为用户已经习惯于授予新的权限,特别是在与披露个人信息(联系人列表等)无关的情况下。 你也可以解释为什么你需要在应用程序描述特定的权限。

处理其他应用程序时,您可能已经看到类似以下屏幕截图的内容:

在这里输入图像说明

首次安装需要Google Play应用内结算的应用时,相关的结算权限也会显示。

以下是安装Evernote(使用应用内结算)时显示的对话框的屏幕截图:

在这里输入图像说明

请注意“networking通信”下的“Google Play结算服务”文字。

不,用户不会被提示接受此权限。 请看OP的答案。

"com.android.vending.BILLING"需要与Google Play应用程序通信,因为任何应用程序都可以声明权限并要求其他应用程序拥有相互通信的权限或使用该应用程序/服务提供的API。

更新您的应用程序的清单

应用内结算依赖于Google Play应用,该应用处理您的应用与Google Play服务器之间的所有通信。 要使用Google Play应用程序,您的应用程序必须请求适当的权限。 您可以通过将com.android.vending.BILLING权限添加到您的AndroidManifest.xml文件来完成此操作。 如果您的应用程序未声明应用内结算许可权,但会尝试发送结算请求,Google Play将拒绝这些请求并回应错误。

要为您的应用程序提供必要的权限,请在您的Android.xml清单文件中添加以下行:

<uses-permission android:name="com.android.vending.BILLING" />

请参阅声明和执行权限以供进一步阅读。

希望这可以帮助。

这是一个古老的问题,我们最近遇到类似的情况,我们的应用程序已经在市场上,我们需要推出一个新的版本,只有一个新的权限,即帐单。 我们曾经认为自动更新不会发生,用户需要手动更新。 尽pipe我们的PRE API 23(Marshmallow)和API 23的testing显示我们的应用程序Auto使用Alpha通道没有任何问题地更新。

因此对于升级,如果你只有BILLING权限(这不是系统权限)升级应该没问题