OneSignal / react-native-onesignal

React Native Library for OneSignal Push Notifications Service
Other
1.57k stars 374 forks source link

[Bug]: fallback alert is always shown on iOS #1664

Open vargajacint opened 8 months ago

vargajacint commented 8 months ago

What happened?

I have observed that even after explicitly setting the parameter to false in the method call OneSignal.Notifications.requestPermission(false);, iOS still presents a fallback alert. Additionally, the function returns an array that contains a boolean value on iOS, instead of returning a boolean value directly.

Everything is working correctly on Android as per the documentation.

Versions: react-native-onesignal: 5.1.0 OneSignalXCFramework: 5.1.3

Steps to reproduce?

1. Request permission in the following way: `const result = await OneSignal.Notifications.requestPermission(false);`
2. Cancel the permission access
3. Observe a fallback alert that points to the Settings app
4. Observe the `result` type is Array on iOS

What did you expect to happen?

Not present the fallback alert if I call the function with false value. Also, the return value should be boolean on iOS as well

React Native OneSignal SDK version

5.1.0

Which platform(s) are affected?

Relevant log output

No response

Code of Conduct

jennantilla commented 8 months ago

Hello @vargajacint thanks for reaching out! We are looking into this.

CFerndp commented 8 months ago

I'm suffering the same issue here. Pending to be resolved

prdjed commented 6 months ago

Until this is fixed I use:

if(Platform.OS==='android'){
    OneSignal.Notifications.requestPermission(false);
  }else{
    OneSignal.Notifications.requestPermission();
  }

since on IOS it works if no arguments are present. And on android it must have argument.