What happened?
We're currently on the latest version (5.0.4) of RN-OneSignal and 0.72.6 of React Native. We discovered a problem inside the library with the name of launchURL param.
On Android the received object contains launchUrl (lowercase) instead of launchURL (uppercase), causing the interface OSNotification to be wrongly typed.
This only happens on Android, since iOS is ok. I double-checked if everything is ok, reinstalling all the dependencies (yes, deleting also the .lock file and the node_modules folder + builds from Android). I have no customisations nor modification on the Native part.
UPDATE 1 Feb 2024: we upgraded to 5.0.5, but it's not solved.
UPDATE 19 Feb 2024: we upgraded to 5.0.6 but it's not solved.
UPDATE 28 Mar 2024: we upgraded to 5.1.0 but it's not solved.
UPDATE 23 Apr 2024: we upgraded to 5.1.2 but it's not solved.
Steps to reproduce?
On an Android phone:
-
Setup everything (RN + OneSignal + ...)
-
Send a notification with Launch URL set to "something"
-
Receive the message in app (doesn't matter if foreground/background/closed)
-
The object received will be like this:
{
...
"body": "<body>",
"launchUrl": "myapp://launch-url-should-be-uppercase",
...
}
- The
OSNotification object is instead like this:
export default class OSNotification {
body: string;
launchURL?: string; // correctly typed uppercase URL
...
}
What did you expect to happen?
The types should mach, being launchURL in both the received object and the OSNotification interface. For now I applied a temporary solution:
// @ts-expect-error in case of wrongly typed launchURL https://github.com/OneSignal/react-native-onesignal/issues/1635
const launchUrl = (notification.launchURL ?? notification.launchUrl) as typeof notification.launchURL;
React Native OneSignal SDK version
5.0.4
Which platform(s) are affected?
Relevant log output
No response
Code of Conduct
What happened?
We're currently on the latest version (5.0.4) of RN-OneSignal and 0.72.6 of React Native. We discovered a problem inside the library with the name of
launchURLparam.On Android the received object contains
launchUrl(lowercase) instead oflaunchURL(uppercase), causing the interfaceOSNotificationto be wrongly typed.This only happens on Android, since iOS is ok. I double-checked if everything is ok, reinstalling all the dependencies (yes, deleting also the .lock file and the node_modules folder + builds from Android). I have no customisations nor modification on the Native part.
UPDATE 1 Feb 2024: we upgraded to
5.0.5, but it's not solved.UPDATE 19 Feb 2024: we upgraded to
5.0.6but it's not solved.UPDATE 28 Mar 2024: we upgraded to
5.1.0but it's not solved.UPDATE 23 Apr 2024: we upgraded to
5.1.2but it's not solved.Steps to reproduce?
On an Android phone:
Setup everything (RN + OneSignal + ...)
Send a notification with
Launch URLset to "something"Receive the message in app (doesn't matter if foreground/background/closed)
The object received will be like this:
{ ... "body": "<body>", "launchUrl": "myapp://launch-url-should-be-uppercase", ... }OSNotificationobject is instead like this:What did you expect to happen?
The types should mach, being
launchURLin both the received object and theOSNotificationinterface. For now I applied a temporary solution:React Native OneSignal SDK version
5.0.4
Which platform(s) are affected?
Relevant log output
No response
Code of Conduct