From ce91cdf963cce8855247d98ac7e16489f32689ae Mon Sep 17 00:00:00 2001 From: Mateo Silguero Date: Tue, 1 Dec 2020 15:18:16 -0300 Subject: [PATCH] export standard events for RNSDK --- README.md | 6 ++++ .../androidsdk/FBAppEventsLoggerModule.java | 33 ++++++++++++++++++ ios/RCTFBSDK/core/RCTFBSDKAppEvents.m | 34 +++++++++++++++++++ src/FBAppEventsLogger.js | 2 ++ 4 files changed, 75 insertions(+) diff --git a/README.md b/README.md index 59b52a99..8521ead1 100644 --- a/README.md +++ b/README.md @@ -367,6 +367,12 @@ import { AppEventsLogger } from "react-native-fbsdk"; // Log a $15 purchase. AppEventsLogger.logPurchase(15, "USD", { param: "value" }); + +// Log a standart event. +AppEventsLogger.logEvent(AppEventsLogger.StandardEvents.CompletedRegistration); + +// Log a custom event. +AppEventsLogger.logEvent('CustomEvent'); ``` ### [Graph API](https://developers.facebook.com/docs/graph-api) diff --git a/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppEventsLoggerModule.java b/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppEventsLoggerModule.java index 411b48cc..c26a81cb 100644 --- a/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppEventsLoggerModule.java +++ b/android/src/main/java/com/facebook/reactnative/androidsdk/FBAppEventsLoggerModule.java @@ -35,6 +35,8 @@ import java.math.BigDecimal; import java.util.Currency; +import java.util.HashMap; +import java.util.Map; /** *

@@ -312,4 +314,35 @@ public void flush() { public void setPushNotificationsRegistrationId(String registrationId) { AppEventsLogger.setPushNotificationsRegistrationId(registrationId); } + + @Override + public Map getConstants() { + final Map constants = new HashMap<>(); + final Map standardEvents = new HashMap<>(); + standardEvents.put("AchievedLevel", AppEventsConstants.EVENT_NAME_ACHIEVED_LEVEL); + standardEvents.put("AdClick", AppEventsConstants.EVENT_NAME_AD_CLICK); + standardEvents.put("AdImpression", AppEventsConstants.EVENT_NAME_AD_IMPRESSION); + standardEvents.put("AddedPaymentInfo", AppEventsConstants.EVENT_NAME_ADDED_PAYMENT_INFO); + standardEvents.put("AddedToCart", AppEventsConstants.EVENT_NAME_ADDED_TO_CART); + standardEvents.put("AddedToWishlist", AppEventsConstants.EVENT_NAME_ADDED_TO_WISHLIST); + standardEvents.put("CompletedRegistration", AppEventsConstants.EVENT_NAME_COMPLETED_REGISTRATION); + standardEvents.put("CompletedTutorial", AppEventsConstants.EVENT_NAME_COMPLETED_TUTORIAL); + standardEvents.put("Contact", AppEventsConstants.EVENT_NAME_CONTACT); + standardEvents.put("CustomizeProduct", AppEventsConstants.EVENT_NAME_CUSTOMIZE_PRODUCT); + standardEvents.put("Donate", AppEventsConstants.EVENT_NAME_DONATE); + standardEvents.put("FindLocation", AppEventsConstants.EVENT_NAME_FIND_LOCATION); + standardEvents.put("InitiatedCheckout", AppEventsConstants.EVENT_NAME_INITIATED_CHECKOUT); + standardEvents.put("Purchased", AppEventsConstants.EVENT_NAME_PURCHASED); + standardEvents.put("Rated", AppEventsConstants.EVENT_NAME_RATED); + standardEvents.put("Searched", AppEventsConstants.EVENT_NAME_SEARCHED); + standardEvents.put("SpentCredits", AppEventsConstants.EVENT_NAME_SPENT_CREDITS); + standardEvents.put("Schedule", AppEventsConstants.EVENT_NAME_SCHEDULE); + standardEvents.put("StartTrial", AppEventsConstants.EVENT_NAME_START_TRIAL); + standardEvents.put("SubmitApplication", AppEventsConstants.EVENT_NAME_SUBMIT_APPLICATION); + standardEvents.put("Subscribe", AppEventsConstants.EVENT_NAME_SUBSCRIBE); + standardEvents.put("UnlockedAchievement", AppEventsConstants.EVENT_NAME_UNLOCKED_ACHIEVEMENT); + standardEvents.put("ViewedContent", AppEventsConstants.EVENT_NAME_VIEWED_CONTENT); + constants.put("StandardEvents", standardEvents); + return constants; + } } diff --git a/ios/RCTFBSDK/core/RCTFBSDKAppEvents.m b/ios/RCTFBSDK/core/RCTFBSDKAppEvents.m index fd73415f..bc1d957f 100644 --- a/ios/RCTFBSDK/core/RCTFBSDKAppEvents.m +++ b/ios/RCTFBSDK/core/RCTFBSDKAppEvents.m @@ -156,4 +156,38 @@ - (dispatch_queue_t)methodQueue return result; } +- (NSDictionary *)constantsToExport { + return @{ + @"StandardEvents": @{ + @"AchievedLevel": FBSDKAppEventNameAchievedLevel, + @"AdClick": FBSDKAppEventNameAdClick, + @"AdImpression": FBSDKAppEventNameAdImpression, + @"AddedPaymentInfo": FBSDKAppEventNameAddedPaymentInfo, + @"AddedToCart": FBSDKAppEventNameAddedToCart, + @"AddedToWishlist": FBSDKAppEventNameAddedToWishlist, + @"CompletedRegistration": FBSDKAppEventNameCompletedRegistration, + @"CompletedTutorial": FBSDKAppEventNameCompletedTutorial, + @"Contact": FBSDKAppEventNameContact, + @"CustomizeProduct": FBSDKAppEventNameCustomizeProduct, + @"Donate": FBSDKAppEventNameDonate, + @"FindLocation": FBSDKAppEventNameFindLocation, + @"InitiatedCheckout": FBSDKAppEventNameInitiatedCheckout, + @"Purchased": FBSDKAppEventNamePurchased, + @"Rated": FBSDKAppEventNameRated, + @"Searched": FBSDKAppEventNameSearched, + @"SpentCredits": FBSDKAppEventNameSpentCredits, + @"Schedule": FBSDKAppEventNameSchedule, + @"StartTrial": FBSDKAppEventNameStartTrial, + @"SubmitApplication": FBSDKAppEventNameSubmitApplication, + @"Subscribe": FBSDKAppEventNameSubscribe, + @"UnlockedAchievement": FBSDKAppEventNameUnlockedAchievement, + @"ViewedContent": FBSDKAppEventNameViewedContent, + } + }; +} + ++ (BOOL)requiresMainQueueSetup { + return YES; +} + @end diff --git a/src/FBAppEventsLogger.js b/src/FBAppEventsLogger.js index 25a99de1..3731f761 100644 --- a/src/FBAppEventsLogger.js +++ b/src/FBAppEventsLogger.js @@ -182,4 +182,6 @@ module.exports = { setPushNotificationsRegistrationId(registrationId: string) { AppEventsLogger.setPushNotificationsRegistrationId(registrationId); }, + + StandardEvents: AppEventsLogger.StandardEvents, };