@adobe/react-native-aepcore
is a wrapper around the iOS and Android Adobe Experience Platform User Profile Extension to allow for integration with React Native applications.
The UserProfile extension has the following peer dependency, which must be installed prior to installing the UserProfile extension:
See Requirements and Installation instructions on the main page
Install the @adobe/react-native-aepuserprofile
package:
npm install @adobe/react-native-aepuserprofile
Initializing the SDK should be done in native code, documentation on how to initialize the SDK can be found here.
Initialization Example
iOS
// AppDelegate.h
@import AEPCore;
@import AEPUserProfile;
...
@implementation AppDelegate
// AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[AEPMobileCore setLogLevel: AEPLogLevelDebug];
// register UserProfile extension
[AEPMobileCore registerExtensions:@[AEPMobileUserProfile.class] completion:^{
[AEPMobileCore configureWithAppId:@"yourAppID"];
...
}];
return YES;
}
@end
Android
import com.adobe.marketing.mobile.LoggingMode;
import com.adobe.marketing.mobile.MobileCore;
import com.adobe.marketing.mobile.UserProfile;
...
import android.app.Application;
...
public class MainApplication extends Application implements ReactApplication {
...
@Override
public void on Create(){
super.onCreate();
...
MobileCore.setApplication(this);
MobileCore.setLogLevel(LoggingMode.DEBUG);
MobileCore.configureWithAppID("yourAppID");
// register UserProfile extension
MobileCore.registerExtensions(
Arrays.asList(UserProfile.EXTENSION),
o -> Log.d("MainApp", "Adobe UserProfile Mobile SDK was initialized.")
)
}
}
In your React Native application, import the UserProfile extension as follows:
import { UserProfile } from "@adobe/react-native-aepuserprofile";
Returns the version of the User Profile extension
Syntax
extensionVersion(): Promise<string>
Example
UserProfile.extensionVersion().then((version) =>
console.log("AdobeExperienceSDK: UserProfile version: " + version)
);
Gets the user profile attributes with the given keys.
Syntax
getUserAttributes(attributeNames: Array<string>): Promise<Record<string, any>>
Example
UserProfile.getUserAttributes(["mapKey", "mapKey1"]).then((map) =>
console.log("AdobeExperienceSDK: UserProfile getUserAttributes: " + map)
);
Removes the user profile attributes for the given keys.
Syntax
removeUserAttributes(attributeNames: Array<string>)
Example
UserProfile.removeUserAttributes(["mapKey1"]);
Sets the user profile attributes key and value. It allows to create/update a batch of user profile attributes.
Syntax
updateUserAttributes(attributeMap: Record<string, any>)
Example
let attrMap = { mapKey: "mapValue", mapKey1: "mapValue1" };
UserProfile.updateUserAttributes(attrMap);