Questions
Android: OneSignal plugin is not able to login with a different `external_id` if it was originally given an `external_id` > 128 characters
4 days ago by Thomas Cannon
This bug prevents Android apps using the OneSignal plugin from being able to change the external_id to a correct value that OneSignal will pick up, and the only current solution is to uninstall and reinstall the app entirely to get a new OneSignal user ID
Android reproduction steps:
Failure caused by being "preloaded" with an overflowing external ID
- Delete any existing installation of the Android app to get a fresh OneSignal ID
- Sign in as
user_1with anexternal_id(eg:user_1.external_id) that is > 128 characters - Observe that the
median.onesignal.info().externalIdis theuser_1.external_id - Observe that the OneSignal subscription is tied to a user that does not have an
external_id - Sign out of
user_1 - Sign in as
user_2with anexternal_id(eg:user_2.external_id) that is < 128 characters - Observe that the
median.onesignal.info().externalIdis theuser_2.external_id - Observe that the OneSignal subscription is still tied to a user that does not have an
external_id
Success when the "preloaded" external ID is within bounds
- Delete any existing installation of the Android app to get a fresh OneSignal ID
- Sign in as
user_1with anexternal_idthat is < 128 characters - Observe that the
median.onesignal.info().externalIdis theuser_1.external_id - Observe that the OneSignal subscription is tied to a user with an
external_idthat is theuser_1.external_id - Sign out
- Observe that the
median.onesignal.info().externalIdis empty - Observe that the OneSignal subscription is tied to a user without an
external_id - Sign back in
- Observe that the
median.onesignal.info().externalIdis theuser_1.external_id - Observe that the OneSignal subscription is tied to the existing user with an
external_idthat is theuser_1.external_id - Sign out of
user_1 - Sign in as
user_2with anexternal_id(eg:user_2.external_id) that is < 128 characters - Observe that the
median.onesignal.info().externalIdis theuser_2.external_id - Observe that the OneSignal subscription is tied to a new user with an
external_idthat is theuser_2.external_id