Edit in GitHubLog an issue

Java

Syntax

Copied to your clipboard
public static String extensionVersion()

Example

Copied to your clipboard
String extensionVersion = UserProfile.extensionVersion();

Swift

Syntax

Copied to your clipboard
static var extensionVersion: String

Example

Copied to your clipboard
let extensionVersion = ACPUserProfile.extensionVersion()

Objective-C

Syntax

Copied to your clipboard
+ (nonnull NSString*) extensionVersion;

Example

Copied to your clipboard
NSString *extensionVersion = [ACPUserProfile extensionVersion];

JavaScript

Copied to your clipboard
ACPUserProfile.extensionVersion().then(extensionVersion => console.log("AdobeExperienceSDK: ACPUserProfile version: " + extensionVersion));

Dart

Copied to your clipboard
String extensionVersion = await FlutterACPUserProfile.extensionVersion;

Cordova

Copied to your clipboard
ACPUserProfile.extensionVersion(function(version) {
console.log("ACPUserProfile version: " + version);
}, function(error) {
console.log(error);
});

C#

Copied to your clipboard
string extensionVersion = ACPUserProfile.ExtensionVersion();

C#

Copied to your clipboard
string extensionVersion = ACPUserProfile.ExtensionVersion();

Java

Syntax

Copied to your clipboard
public static void getUserAttributes(List<String> keys, AdobeCallback<Map<String, Object>> callback)
  • callback is invoked after the customer attributes are available.

Example

A retail application wants to get the itemsAddedToCart user data when processing checkout.

When AdobeCallbackWithError is provided, if the operation times out (5s) or an unexpected error occurs, the fail method is called with the appropriate AdobeError.

Copied to your clipboard
UserProfile.getUserAttributes(Arrays.asList("itemsAddedToCart"), new AdobeCallbackWithError<Map<String, Object>>() {
@Override
public void fail(AdobeError adobeError) {
// your customized code
}
@Override
public void call(Map<String, Object> stringObjectMap) {
// your customized code
}
});

Swift

Syntax

Copied to your clipboard
static func getUserAttributes(_ attributeNames: [String]?, withCompletionHandler completionHandler:([AnyHashable : Any]?, Error?) -> Void)
  • completionHandler is invoked after the customer attributes are available, or error if an unexpected error occurs or the request times out. The default timeout is 5s.

Example

A retail application wants to get the itemsAddedToCart user data when processing checkout.

Copied to your clipboard
ACPUserProfile.getUserAttributes(["itemsAddedToCart"], withCompletionHandler: {(dict: [AnyHashable: Any]?, error: Error?) -> Void in
// your customized code
})

Objective-C

Syntax

Copied to your clipboard
+ (void) getUserAttributes: (nullable NSArray <NSString*>*) attributNames withCompletionHandler: (nonnull void (^) (NSDictionary* __nullable userAttributes, NSError* _Nullable error)) completionHandler

Example

Copied to your clipboard
[ACPUserProfile getUserAttributes:attributes withCompletionHandler:^(NSDictionary* dict, NSError* error){
// your customized code
}];

Dart

Syntax

Copied to your clipboard
static Future<String> getUserAttributes(List<String> attributeKeys) async
  • attributeKeys is an array of strings containing the names of user profile attributes to retrieve.

Example

A retail application wants to get the itemsAddedToCart user data when processing checkout.

Copied to your clipboard
try {
result = await FlutterACPUserProfile.getUserAttributes(["itemsAddedToCart"]);
} on PlatformException {
log("Failed to get the user attributes");
}

Cordova

Syntax

Copied to your clipboard
ACPUserProfile.getUserAttributes = function(attributeNames, success, fail);
  • attributeNames is an array of strings containing the names of user profile attributes to retrieve.
  • success is a callback containing the retrieved user profile attributes.
  • fail is a callback containing error information if the getUserAttributes API was executed with errors.

Example

A retail application wants to get the itemsAddedToCart user data when processing checkout.

Copied to your clipboard
var attributeNames = new Array();
attributeNames.push("itemsAddedToCart");
ACPUserProfile.getUserAttributes(attributeNames, handleCallback, handleError);

Syntax

Android

Copied to your clipboard
public unsafe static void GetUserAttributes (IList<string> keys, IAdobeCallback callback);
  • keys is an IList containing the names of user profile attributes to retrieve.

iOS

Copied to your clipboard
public unsafe static void GetUserAttributes (string[] attributNames, [BlockProxy (typeof(ObjCRuntime.Trampolines.NIDActionArity2V0))] Action<NSDictionary, NSError> completionHandler);
  • attributNames is an array of strings containing the names of user profile attributes to remove.

Example

A retail application wants to get the itemsAddedToCart user data when processing checkout.

Android

Copied to your clipboard
var keysToRetrieve = new List<string>();
keysToRetrieve.Add("itemsAddedToCart");
ACPUserProfile.GetUserAttributes(keysToRetrieve, new AdobeCallback());
class AdobeCallback : Java.Lang.Object, IAdobeCallbackWithError
{
public void Fail(AdobeError error)
{
Console.WriteLine("GetUserAttributes error: " + error.ToString());
}
public void Call(Java.Lang.Object retrievedAttributes)
{
if (retrievedAttributes != null)
{
var attributesDictionary = new Android.Runtime.JavaDictionary<string, object>(retrievedAttributes.Handle, Android.Runtime.JniHandleOwnership.DoNotRegister);
foreach (KeyValuePair<string, object> pair in attributesDictionary)
{
Console.WriteLine("[ " + pair.Key + " : " + pair.Value + " ]");
}
}
else
{
Console.WriteLine("GetUserAttributes callback is null.");
}
}
}

iOS

Copied to your clipboard
var callback = new Action<NSDictionary, NSError>(handleCallback);
var keysToRetrieve = new string[] { "itemsAddedToCart" };
ACPUserProfile.GetUserAttributes(keysToRetrieve, callback);
private void handleCallback(NSDictionary content, NSError error)
{
if (error != null)
{
Console.WriteLine("GetUserAttributes error: " + error.DebugDescription);
}
else if (content == null)
{
Console.WriteLine("GetUserAttributes callback is null.");
}
else
{
var attributesDictionary = (NSDictionary)content;
foreach (KeyValuePair<NSObject, NSObject> pair in attributesDictionary)
{
Console.WriteLine("[ " + pair.Key + " : " + pair.Value + " ]");
}
}
}

Java

Syntax

Copied to your clipboard
public static void registerExtension()

Example

Copied to your clipboard
import com.adobe.marketing.mobile.UserProfile
...
UserProfile.registerExtension();

Register the Identity extension in your app's didFinishLaunchingWithOptions function:

Swift

Syntax

Copied to your clipboard
static func registerExtensions()

Example

Copied to your clipboard
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
ACPUserProfile.registerExtension()
// Override point for customization after application launch.
return true;
}

Objective-C

Syntax

Copied to your clipboard
+ (void) registerExtension;

Example

Copied to your clipboard
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[ACPUserProfile registerExtension];
// Override point for customization after application launch.
return YES;
}

Java

Syntax

Copied to your clipboard
public static void removeUserAttribute(String attributeName)

Example

A retail application wants to remove the itemsAddedToCart user data after the product is purchased.

Copied to your clipboard
UserProfile.removeUserAttribute("itemsAddedToCart");

Swift

Syntax

Copied to your clipboard
static func removeUserAttribute(_ attributeName: String)

Example

A retail application wants to remove the itemsAddedToCart user data after the product is purchased.

Copied to your clipboard
ACPUserProfile.removeUserAttribute("itemsAddedToCart");

Objective-C

Syntax

Copied to your clipboard
+ (void) removeUserAttribute: (nonnull NSString*) key

Example

Copied to your clipboard
[ACPUserProfile removeUserAttribute:@"itemsAddedToCart"];

Dart

Syntax

Copied to your clipboard
static Future<void> removeUserAttribute(String attributeName) async
  • attributeName is a string containing the name of the user profile attribute to remove.

Example

A retail application wants to remove the itemsAddedToCart user data after the product is purchased.

Copied to your clipboard
FlutterACPUserProfile.removeUserAttribute("itemsAddedToCart");

Cordova

Syntax

Copied to your clipboard
ACPUserProfile.removeUserAttribute = function(attributeName, success, fail);
  • attributeName is a string containing the name of the user profile attribute to remove.
  • success is a callback containing a general success message if the removeUserAttribute API executed without any errors.
  • fail is a callback containing error information if the removeUserAttribute API was executed with errors.

Example

A retail application wants to remove the itemsAddedToCart user data after the product is purchased.

Copied to your clipboard
ACPUserProfile.removeUserAttribute("itemsAddedToCart", handleCallback, handleError);

C#

Syntax

Android

Copied to your clipboard
public unsafe static void RemoveUserAttribute (string attributeName);
  • attributeName is a string containing the name of the user profile attribute to remove.

iOS

Copied to your clipboard
public static void RemoveUserAttribute (string attributeName);
  • attributeName is a string containing the name of the user profile attribute to remove.

Example

A retail application wants to remove the itemsAddedToCart user data after the product is purchased.

Copied to your clipboard
ACPUserProfile.RemoveUserAttribute("itemsAddedToCart");

Java

Syntax

Copied to your clipboard
public static void removeUserAttributes(List<String> attributeNames)

Example

You want to remove username, usertype user data when session timeout occurs.

Copied to your clipboard
UserProfile.removeUserAttributes(Arrays.asList("username", "usertype"));

Swift

Syntax

Copied to your clipboard
static func removeUserAttributes(_ attributeNames: [String]?)

Example

You want to remove username, usertype user data when session timeout occurs.

Copied to your clipboard
ACPUserProfile.removeUserAttributes(["username","usertype"]);

Objective-C

Syntax

Copied to your clipboard
+ (void) removeUserAttributes: (nonnull NSArray <NSString*>*) attributeNames

Example

Copied to your clipboard
[ACPUserProfile removeUserAttributes:@[@"username", @"usertype"]]

Dart

Syntax

Copied to your clipboard
static Future<void> removeUserAttributes(List<String> attributeName) async
  • attributeName is an array of strings containing the names of user profile attributes to remove.

Example

You want to remove username, usertype user data when session timeout occurs.

Copied to your clipboard
FlutterACPUserProfile.removeUserAttributes(["username", "usertype"])

Cordova

Syntax

Copied to your clipboard
ACPUserProfile.removeUserAttributes = function(attributeNames, success, fail);
  • attributeNames is an array of strings containing the names of user profile attributes to remove.
  • success is a callback containing a general success message if the removeUserAttributes API executed without any errors.
  • fail is a callback containing error information if the removeUserAttributes API was executed with errors.

Example

You want to remove username, usertype user data when session timeout occurs.

Copied to your clipboard
var attributeNames = new Array();
attributeNames.push("username");
attributeNames.push("usertype");
ACPUserProfile.removeUserAttributes(attributeNames, handleCallback, handleError);

C#

Syntax

Android

Copied to your clipboard
public unsafe static void RemoveUserAttributes (IList<string> attributeNames);
  • attributeNames is an IList containing the names of user profile attributes to remove.

iOS

Copied to your clipboard
public static void RemoveUserAttributes (string[] attributeNames);
  • attributeNames is an array of strings containing the names of user profile attributes to remove.

Example

You want to remove username, usertype user data when session timeout occurs.

Android

Copied to your clipboard
var attributes = new List<string>();
attributes.Add("username");
attributes.Add("usertype");
ACPUserProfile.RemoveUserAttributes(attributes);

iOS

Copied to your clipboard
string[] attributes = new string[] { "username", "usertype" };
ACPUserProfile.RemoveUserAttributes(attributes);

Java

Syntax

Copied to your clipboard
public static void updateUserAttribute(String attributeName,
Object attributeValue)

Example

You want to update username of a user obtained in the log in page:

Copied to your clipboard
UserProfile.updateUserAttribute("username", "Will Smith");

Swift

Syntax

Copied to your clipboard
static func updateUserAttribute(_ attributeName: String, withValue attributeValue: String?)

Example

You want to update username of a user obtained in the log in page:

Copied to your clipboard
ACPUserProfile.updateUserAttribute("username", withValue: "Will Smith");

Objective-C

Syntax

Copied to your clipboard
+ (void) updateUserAttribute: (nonnull NSString*) attributeName withValue: (nullable NSString*) attributeValue;

Example

Copied to your clipboard
[ACPUserProfile updateUserAttribute:@"username" withValue:@"Will Smith"];

Dart

Syntax

Copied to your clipboard
static Future<void> updateUserAttribute(String attributeName, String attributeValue) async
  • attributeName is a string containing the name of the user profile attribute to create or update.
  • attributeValue must be a string, number, or array containing the user profile attribute value.

Example

You want to update username of a user obtained in the log in page :

Copied to your clipboard
FlutterACPUserProfile.updateUserAttribute("username", "Will Smith");

Cordova

Syntax

Copied to your clipboard
ACPUserProfile.updateUserAttribute = function(attributeName, attributeValue, success, fail);
  • attributeName is a string containing the name of the user profile attribute to create or update.
  • attributeValue must be a string, number, or array containing the user profile attribute value.
  • success is a callback containing a general success message if the updateUserAttribute API executed without any errors.
  • fail is a callback containing error information if the updateUserAttribute API was executed with errors.

Example

You want to update username of a user obtained in the log in page:

Copied to your clipboard
ACPUserProfile.updateUserAttribute("username", "Will Smith", handleCallback, handleError);

C#

Syntax

Android

Copied to your clipboard
public unsafe static void UpdateUserAttribute (string attributeName, Java.Lang.Object attributeValue);
  • attributeName is a string containing the name of the user profile attribute to create or update.
  • attributeValue must be a String, Integer, Boolean, Double, Array, or Map containing the user profile attribute value. Custom objects cannot be saved as a UserProfile attribute.

iOS

Copied to your clipboard
public static void UpdateUserAttribute (string attributeName, string attributeValue);
  • attributeName is a string containing the name of the user profile attribute to create or update.
  • attributeValue is a string containing the user profile attribute value.

Example

You want to update username of a user obtained in the log in page:

Copied to your clipboard
ACPUserProfile.updateUserAttribute("username", "Will Smith");

Java

Syntax

Copied to your clipboard
public static void updateUserAttributes(Map<String, Object> attributeMap)

Example

You want to update username, usertype of a user obtained in the log in page:

Copied to your clipboard
HashMap<String, Object> profileMap = new HashMap<>();
profileMap.put("username","Will Smith");
profileMap.put("usertype","Actor");
UserProfile.updateUserAttributes(profileMap);

Swift

Syntax

Copied to your clipboard
static func updateUserAttributes(_ attributeMap: [AnyHashble: Any])

Example

You want to update username, usertype of a user obtained in the log in page:

Copied to your clipboard
var profileMap = [AnyHashable: Any]()
profileMap["username"] = "will_smith"
profileMap["usertype"] = "Actor"
ACPUserProfile.updateUserAttributes(profileMap)

Objective-C

Syntax

Copied to your clipboard
+ (void) updateUserAttributes: (nonnull NSDictionary*) attributeMap

Example

Copied to your clipboard
NSMutableDictionary *profileMap = [NSMutableDictionary dictionary];
[profileMap setObject:@"username" forKey:@"will_smith"];
[profileMap setObject:@"usertype" forKey:@"Actor"];
[ACPUserProfile updateUserAttributes:profileMap];

Dart

Syntax

Copied to your clipboard
static Future<void> updateUserAttributes(Map<String, Object> attributeMap) async
  • attributeMap is a object containing a batch of user profile attributes to create or update.

Example

You want to update username, usertype of a user obtained in the log in page:

Copied to your clipboard
FlutterACPUserProfile.updateUserAttributes({"username":"will_smith", "usertype":"Actor"});

Cordova

Syntax

Copied to your clipboard
ACPUserProfile.updateUserAttributes = function(attributes, success, fail);
  • attributes is a object containing a batch of user profile attributes to create or update.
  • success is a callback containing a general success message if the updateUserAttributes API executed without any errors.
  • fail is a callback containing error information if the updateUserAttributes API was executed with errors.

Example

You want to update username, usertype of a user obtained in the log in page:

Copied to your clipboard
var username = "will_smith";
var usertype = "Actor";
var attributes = {"username":username, "usertype":usertype};
ACPUserProfile.updateUserAttributes(attributes, handleCallback, handleError);

C#

Syntax

Android

Copied to your clipboard
public unsafe static void UpdateUserAttributes (IDictionary<string, Java.Lang.Object> attributeMap);
  • attributeMap is a object containing a batch of user profile attributes to create or update.

iOS

Copied to your clipboard
public static void UpdateUserAttributes (NSDictionary attributeMap);
  • attributeMap is a object containing a batch of user profile attributes to create or update.

Example

You want to update username, usertype of a user obtained in the log in page :

Android

Copied to your clipboard
var attributes = new Dictionary<string, Java.Lang.Object>();
attributes.Add("username", "will_smith");
attributes.Add("usertype", "Actor");
ACPUserProfile.UpdateUserAttributes(attributes);

iOS

Copied to your clipboard
var attributes = new NSMutableDictionary<NSString, NSString>
{
["username"] = new NSString("will_smith"),
["usertype"] = new NSString("Actor")
};
ACPUserProfile.updateUserAttributes(attributes);
Was this helpful?
  • Privacy
  • Terms of Use
  • Do not sell or share my personal information
  • AdChoices
Copyright © 2024 Adobe. All rights reserved.