Skip to content

Commit 032dc37

Browse files
Add SetDefaultEventParameters and ClearDefaultEventParameters to Analytics
This change introduces two new C++ Analytics SDK functions: - `SetDefaultEventParameters(const std::map<std::string, firebase::Variant>& params)`: Allows setting default parameters that will be included in all subsequent `LogEvent` calls. If a `firebase::Variant::Null()` is provided as a value for a key, that specific default parameter will be cleared/removed. - `ClearDefaultEventParameters()`: Clears all currently set default event parameters. Platform implementations: - iOS: Uses `[FIRAnalytics setDefaultEventParameters:]`. `firebase::Variant::Null()` maps to `[NSNull null]` for clearing individual parameters. Calling with `nil` clears all. - Android: Uses `FirebaseAnalytics.setDefaultEventParameters(Bundle)`. `firebase::Variant::Null()` results in `Bundle.putString(key, null)`. Calling with a `null` Bundle clears all. - Stub: Implemented as no-ops. Unit tests and integration tests have been updated to cover these new functionalities, including the null-value handling for clearing specific parameters and the overall clearing of all parameters. Integer literals in integration tests use standard int types.
1 parent 8dad037 commit 032dc37

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

analytics/integration_test/src/integration_test.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ TEST_F(FirebaseAnalyticsTest, TestDefaultEventParametersUsage) {
347347
std::map<std::string, firebase::Variant> initial_defaults;
348348
initial_defaults["initial_key"] = "initial_value";
349349
initial_defaults["key_to_be_nulled"] = "text_before_null";
350-
initial_defaults["numeric_default"] = 12345LL;
350+
initial_defaults["numeric_default"] = 12345;
351351

352352
LogInfo("Setting initial default event parameters.");
353353
firebase::analytics::SetDefaultEventParameters(initial_defaults);
@@ -379,7 +379,7 @@ TEST_F(FirebaseAnalyticsTest, TestClearDefaultEventParametersFunctionality) {
379379

380380
std::map<std::string, firebase::Variant> defaults_to_clear;
381381
defaults_to_clear["default_one"] = "will_be_cleared";
382-
defaults_to_clear["default_two"] = 9876LL;
382+
defaults_to_clear["default_two"] = 9876;
383383

384384
LogInfo("Setting default parameters before clearing.");
385385
firebase::analytics::SetDefaultEventParameters(defaults_to_clear);

0 commit comments

Comments
 (0)