Comments (4)
Tracking internally as https://go.mparticle.com/work/SQDSDKS-2772
from react-native-mparticle.
Hey @markgibaud-vtail thanks for raising this! The blocker for us currently is migrating the SDK initialization logic (MParticle.start(MParticleOptions)
to the JS side. Historically, we have strongly recommended that everyone initialize the SDK in Application.onCreate()
, primarily to start Kits as early in the application lifecycle as possible. Based on this, in most of our tertiary SDKs that wrap their Native counterparts, the paradigm we follow is 1) require initialization of the SDKs in the native layer 2) interact with the initialized SDK in the platform layer (ie in React, the JS layer)
Now, since attribution can happen quite quickly after initialization, we require AttributionListener
instances to be registered from within MParticleOptions
so due to this, there is no Native endpoint (MParticle#setAttributionListener()
for example) that we can map to from the React JS layer. That is, unless we chose to wrap MParticleOptions
altogether and go down the path of allowing full-on initialization from JS.
Obviously, there are some assumptions we could and are revisiting here; do we need to initialize exactly in onCreate()
, are there any downsides of opening an additional API to register an AttributionListener
after SDK initialization, etc. Basically, this is my long-winded way of saying "we agree but there are a few complicating factors beyond just adding a mapping" :)
from react-native-mparticle.
Hi @willpassidomo thanks for the reply and description! I imagined it wasn't straight forward.
One option is checking out how react-native-voip-notification
lib does it, where they just store the events on the native side until the RN side is detected to be up / listener wired up, then send over the collection of events. Requires implementing startObserving
and blah blah on the RN side so also not trivial but perhaps an option!
react-native-callkeep
has a similar approach:
Not causing us any huge issues so far though, just a code convenience, so happy for this to go into the backlog until there are more requests around it!
from react-native-mparticle.
Tracking internally as ticket #76390.
This is in the backlog, but as it's not high priority I can't give a reasonably accurate ETA at this time. We'll update this ticket when more information is available.
from react-native-mparticle.
Related Issues (20)
- Can't build the app after upgrading mParticle-Apple-SDK to 8.13.0 HOT 3
- Unable install in expo HOT 16
- Missing userId when calling getUserAttributes()
- iOS: TypeError: null is not an object (evaluating '_reactNative.NativeModules.Mparticle.setUserAttributeArray') HOT 3
- Environment setup? HOT 1
- Value cannot be cast from Boolean to String HOT 5
- Compilation Error HOT 2
- question: isLoggedIn flag. HOT 1
- Not able to find specification HOT 2
- Plugin uses deprecated part of the mParticle Android SDK
- Could not invoke MParticle.logEvent HOT 3
- After published 2.7.1 old versions have stopped being build HOT 12
- Question: Is autolinking supported? HOT 3
- Documentation needs more clarity around identification HOT 1
- Module uses old part of the mParticle Android SDK HOT 4
- mParticle -> Warning: Braze SDK initialized outside of mParticle kit
- Global Subscription States in Braze via mParticle React Native library
- Simulator not running on M1 MacBook? HOT 2
- Migrate to AndroidX HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-native-mparticle.