在运行时推送通知(GCM)权限?

我已经读过,有必要在运行时向用户提供API 23及更高版本的一些权限。 例如: android.permission.ACCESS_FINE_LOCATION 。 如果API是23或更高,是否有必要(甚至可能)要求在运行时使用GCM /推送通知的运行时权限?

我已经尝试在运行时使用requestPermissions方法,但是当我将它用于任何GCM /推送通知相关的权限时,似乎不起作用(没有任何反应)。

为了这个目的,我在Manifest中拥有以下权限:

 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE"/> <permission android:name="${applicationId}.permission.C2D_MESSAGE" android:protectionLevel="signature"/> 

用户知道的唯一权限是从Play商店下载应用程序时的ACCESS_FINE_LOCATION 。 用户不能select是否允许推送通知?

任何帮助将不胜感激。

Related of "在运行时推送通知(GCM)权限?"

实际上, 推送通知的权限位于正常类别许可中,如INTERNET权限不在危险类别许可中

不必要求推送通知权限。

虽然联系人/位置是危险的权限,因为您正在访问用户data.so总是需要问用户允许它。

希望你明白。 https://developer.android.com/guide/topics/security/permissions.html