customerio / customerio-reactnative

MIT License
25 stars 13 forks source link

iOS devices are added only in case of new app installation #62

Closed mduthilleul closed 1 year ago

mduthilleul commented 1 year ago

SDK version: 1.0.1-alpha.3

Environment: Production

Are logs available?

Describe the bug On customerio console iOS devices seems to be added only after the app is fully installed. If app is update we the addition of the SDK, the device is not added. Thus even if MessagingPush.shared.messaging(messaging, didReceiveRegistrationToken: fcmToken) in the notificationHandle is actually called. It is working propely on android

To Reproduce Delete a user device. Log-in again on the app, the device is not added back on iOS. It is on Android.

Expected behavior If a user updates the app with the newly added customer ios sdk it's device should be added. Not only the the app is newly installed.

Screenshots

Additional context

ami-aman commented 1 year ago

Hey @mduthilleul Thanks for reaching out.

Reading through the description, I am wondering if this behaviour is because of a missing call as every time you login, the package should identify and register a device. I would suggest to go through the steps as mentioned in our docs and verify that you aren't missing out anything.

Also, it would be very helpful if you could share the logs to win@customer.io and mention this ticket so that we can take a look while you are verifying the steps at your end.

matt-frizzell commented 1 year ago

@mduthilleul As a quick update to you, our team has picked this issue up and is working on a resolution for what you've called out here. We'll update you again when we get something for you to test if you like or as we deploy the official changes. Thanks again for reaching out to us and providing the information to get us pointed in the right direction!

lucasbeatdapp commented 1 year ago

Hello! I believe I am experiencing the same issue, are there any updates on this?

MasoudJB commented 1 year ago

Hi We also have a similar issue.

CustomerIO.identify(email.toLowerCase(), {"deviceId": deviceId});

The above code adds the user's device to the user's profile for Android but does not work on IOS.

ami-aman commented 1 year ago

Hi @lucasbeatdapp As an update, the squad is working on it and we will update the conversation as we have a fix.

ami-aman commented 1 year ago

Hey @MasoudJB

CustomerIO.identify(email.toLowerCase(), {"deviceId": deviceId}); would identify the user profile but would not register the device. This doc can help you understand how to register the device.

If there's something else that you are trying to explain? Would you like to send us an email on win@customer.io so that we can assist you further ?

rivaros commented 1 year ago

@ami-aman hi! could you check latest issue added, it seems like related to case above.

lj-cio commented 1 year ago

Hello! Thanks for your patience as we continue working on the lifecycle differences. In the meantime, we just pushed version 2.0.1 which includes the option to add a device token directly using the method CustomerIO.registerDeviceToken(token). Take a look and let us know if this unblocks you in short term. Thank you!