【问题标题】:React Native: Not asking for push permission on Android (OneSignal)React Native:不要求 Android 上的推送权限(OneSignal)
【发布时间】:2019-06-07 06:16:25
【问题描述】:

我刚刚安装了 OneSignal 包并按照docs 中的描述进行了设置。然而,OneSignal 总是拥有/从用户那里获得权限,尽管没有弹出式应用程序要求用户提供权限。也许这就是 Android 的常用工作方式,但我习惯于弹出请求权限(我是 iOS 用户)。

Android 不是要求用户提供推送通知权限吗?这很平常吗?这是否也符合 GDPR 法规

或者我只需要负责请求权限的AndroidManifest.xml 吗?

因为当我在我的测试设备 Android 上安装我的 .apkIS NOT 要求进一步的权限,尽管在 AndroidManifest.xml 我要求推送通知权限和位置权限!

这是安装屏幕:

这是AndroidManifest.xml 的 OneSignal 代码:

<!-- Optional - Add the necessary permissions (Choose one of those) -->

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <!-- Approximate location - If you want to use promptLocation for letting OneSignal know the user location. -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <!--  Precise location If you want to use promptLocation for letting OneSignal know the user location. -->

<!-- End optional permissions -->


<application ....>
  <activity
    android:name=".MainActivity"
    android:label="OneSignal Example"
    android:launchMode="singleTop"> <!-- Add this attribute to your main activity -->
  </activity>
    .....

【问题讨论】:

    标签: android react-native android-permissions user-permissions


    【解决方案1】:

    在 Android 中,您只需请求他们归类为危险的权限。

    https://developer.android.com/guide/topics/permissions/overview

    只有危险的权限需要用户同意。安卓的方式 要求用户授予危险权限取决于 用户设备上运行的Android,目标系统版本 通过您的应用。

    您可以在此处找到一个表格,其中列出了当前归类为危险的权限。

    https://developer.android.com/guide/topics/permissions/overview#permission-groups

    此列表中显然缺少推送通知,因此您无需向用户请求许可即可向他们发送推送通知。

    关于任何其他权限,如果 OneSignal 想要访问它们并且它们被归类为危险(例如位置),那么他们获得它的唯一方法是显示一个请求访问该信息的权限的对话框。否则他们将无法访问该信息。

    在 iOS 中,权限系统受到更严格的控制,在您执行大多数操作之前,您必须先获得许可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多