urbanairship / react-native-airship

Airship React Native module
Other
87 stars 62 forks source link

Registration token is not recreated on release mode on iOS 18 device #596

Open maya-salcedo opened 2 days ago

maya-salcedo commented 2 days ago

❗For how-to inquiries involving Airship functionality or use cases, please contact (support)[https://support.airship.com/].

Preliminary Info

What Airship dependencies are you using?

"@ua/react-native-airship": "19.3.2",

What are the versions of any relevant development tools you are using?

"react": "18.2.0", "react-native": "0.73.9", --> fabric architecture enabled "engines": { "node": ">=20" }, "packageManager": "yarn@3.6.4",

Report

What unexpected behavior are you seeing?

After upgrading our two test iPhone devices to iOS 18, the registration token is not being created in the release mode, but only on the debug mode.

I'm fetching it with await Airship.push.getRegistrationToken();

And also listening to to it,

let registrationTokenSubscription = Airship.addListener(
                EventType.PushTokenReceived,
                (event) => {
                  console.log('AIRSHIP: Registration token Created');
                },
              );

The event listener was listening for 30 minutes and no registration token was created.

Before the iOS version upgrade, registration token was available also in the release mode with no issue.

What is the expected behavior?

To have the registration token available from the airship api in both debug and release mode on iOS 18 devices.

What are the steps to reproduce the unexpected behavior?

Update the physical iPhone device to iOS 18 and test the release mode.

Do you have logging for the issue?

rlepinski commented 2 days ago

Could you check the xcode logs or console? It should log something about the device token not being able to generate from this log line:

        AirshipLogger.error(
            "Application failed to register for remote notifications with error \(error)"
        )