Skip to content

[Bug]: Robustness for GDPR compliance #272

@Minishlink

Description

@Minishlink

Which Platforms?

Both

Which React Native Version?

0.74

Which @braze/react-native-sdk SDK version?

13.1.0

Repro Rate

100%

Steps To Reproduce

Hello, this is a general issue

Expected Behavior

  1. Developer should be able to set SDK enabled to false by default so that when users first opens the app, the SDK is disabled instead of enabled (this is separate from SDK initialization/configuration)
  2. The SDK should resume sending events properly after SDK has been enabled after it was initially disabled. Today, no events are received on the dashboard until the app calls again changeUser+requestImmediateDataFlush
  3. enableSDK should be a promise that resolves when the SDK is completely enabled
  4. It would be nice that the developer could be able to know if Braze is actually enabled or not (Braze.getIsEnabled()?)

Actual Incorrect Behavior

Verbose Logs

No response

Additional Information

A bunch of ugly workarounds are possible:

  1. Really complex to accomplish although in theory feasible but you would have to somehow make the initialization later. Haven't looked into it more.
  2. Call changeUser and requestImmediateDataFlush again after enabling Braze and waiting some milliseconds since enableSDK is not a promise.
  3. The very robust setTimeout 🙃
  4. Handle that info on the developer's side, but this is obviously precarious

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions