Android M:计费和 GCM 权限

Android M : Billing and GCM permissions

我有一个使用 GCM 和计费的应用程序。为了使其 Android M-ready 我正在尝试实施新的 permission model.

很遗憾,我找不到任何有关 GCM 和计费权限的信息。 它们不会出现在 normal permission list 中,并且显然不适用于 Manifest.permission.*,因为它们不在 android.permission 命名空间下。

尽管如此,我们仍然必须在清单中声明它们

<uses-permission android:name="com.android.vending.BILLING">
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE">

那么应该如何处理这些权限?它们是自动授予的吗?

这些权限是在安装时自动授予的:

checkSelfPermission("com.android.vending.BILLING") returns PERMISSION_GRANTED 从未询问过用户。

据我了解文档和最新 M 预览版的行为,唯一必须在运行时请求的权限是具有 permission group 的权限,因为提示的弹出窗口给用户只提权限组。