java - 具有解析推送通知的 Android M 权限

标签 java android parse-platform permissions push-notification

我对新的运行时权限模型仍然有些困惑。解析推送通知 (GCM) 的以下任何所需权限是否需要运行时权限?

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission android:name="android.permission.WAKE_LOCK" />

<uses-permission android:name="android.permission.VIBRATE" />

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<uses-permission android:name="android.permission.GET_ACCOUNTS" />

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

 <permission android:protectionLevel="signature"       android:name="com.parse.starter.permission.C2D_MESSAGE" />

<uses-permission android:name="com.parse.starter.permission.C2D_MESSAGE" />

最佳答案

在您上面列出的权限中,GET_ACCOUNTS 需要运行时检查,因为它的保护级别是危险的。

但问题是,虽然 GCM 不再需要 GET_ACCOUNTS 权限才能工作(我猜是从 7.5 Play Services 开始),但如果您使用 Parse Push Notifications,仍然需要它。

似乎为了让 Parse 提供与所有 Android 驱动设备的完全兼容性(即非基于 GCM 的设备,如 Kindle Fires,不支持 GCM,它们必须回退到自己的持久套接字实现,并且当然是 4.0.3 及以下版本的设备),Parse 仍然需要此权限和其他一些权限。

Parse 的一个人提到:

We require it being requested, aka being in AndroidManifest.xml, but don't require it being granted.

问题正在讨论中,您可能想看看这些主题:

https://github.com/ParsePlatform/Parse-SDK-Android/issues/129 https://parse.com/questions/android-use-only-gcm-dont-require-additional-permissions

关于java - 具有解析推送通知的 Android M 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32109674/

相关文章:

android - 将 index.js entryFile 更改为 index.android.js 会引发错误

android - 解析,安卓; ParseQuery 适配器中的 relation.getQuery()

ios - 如何将证书从开发切换到生产?

java - 尝试使用 Java 在 sqlite 数据库中创建表时出现空指针异常

java - Java中时间格式转换为long变量

java - 如何使用java替换字符串之间存在的ascii字符

java - 如何将 Java 日期格式的日期传递给 cURL (PHP)?

java - Android:选择屏幕上的持续时间

Android Honeycomb - 如何在查询文本为空时显示对 SearchView 的建议?

android - Native-Base - 列表内的复选框未被选中