This repository has been archived by the owner on Jul 8, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 54
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1c87b56
commit 5316b44
Showing
259 changed files
with
35,607 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
Pod::Spec.new do |s| | ||
s.name = "ACPIdentityBeta" | ||
s.version = "0.0.1beta" | ||
s.summary = "BETA - Identity framework for Adobe Experience Cloud SDK. Written and Supported by Adobe, the official Pod for the Adobe Experience Cloud." | ||
s.description = <<-DESC | ||
By using the Adobe Cloud Platform SDKs (“Beta”), you hereby acknowledge that the Beta is provided “as is” without warranty of any kind. Adobe shall have no obligation to maintain, correct, update, change, modify or otherwise support the Beta. You are advised to use caution and not to rely in any way on the correct functioning or performance of such Beta and/or accompanying materials. | ||
The Identity framework provides APIs that allow use of the Experience Cloud ID Service product in the V5 Adobe Experience Cloud SDK. | ||
DESC | ||
|
||
s.homepage = "https://github.com/Adobe-Marketing-Cloud/acp-sdks/releases" | ||
|
||
s.license = {:type => "Commercial", :text => "Adobe Systems, Incorporated. All Rights Reserved."} | ||
s.author = "Adobe Cloud Platform SDK Team" | ||
s.source = { :git => 'https://github.com/Adobe-Marketing-Cloud/acp-sdks.git', :tag => "v0.0.1beta-ACPIdentity" } | ||
s.platform = :ios, '10.0' | ||
|
||
s.default_subspec = 'iOS' | ||
|
||
# dependency on the core framework | ||
s.dependency "ACPCoreBeta", ">= 0.0.3beta" | ||
|
||
s.subspec 'iOS' do |ios| | ||
ios.preserve_paths = '*/Frameworks/*.framework' | ||
ios.source_files = 'Pod/Classes/**/*', 'ACPIdentity_iOS.framework/Headers/*.h' | ||
ios.public_header_files = 'ACPIdentity_iOS.framework/Headers/*.h' | ||
ios.vendored_frameworks = 'ACPIdentity_iOS.framework', 'AdobeMarketingMobileIdentity.framework' | ||
ios.xcconfig = { | ||
"FRAMEWORK_SEARCH_PATHS" => "'${PODS_ROOT}/ACPIdentityBeta'", | ||
"LD_RUNPATH_SEARCH_PATHS" => "@loader_path/../Frameworks" | ||
} | ||
ios.requires_arc = true | ||
end | ||
end |
Binary file not shown.
Binary file added
BIN
+4.75 MB
ACPIdentity_iOS.framework/Frameworks/ACPCore_iOS.framework/ACPCore_iOS
Binary file not shown.
210 changes: 210 additions & 0 deletions
210
ACPIdentity_iOS.framework/Frameworks/ACPCore_iOS.framework/Headers/ACPCore.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,210 @@ | ||
// | ||
// ACPCore.h | ||
// Adobe Digital Marketing Suite -- iOS Application Measurement Library | ||
// | ||
// Copyright 1996-2018. Adobe, Inc. All Rights Reserved | ||
// | ||
// SDK Version: 5.0.0b2 | ||
|
||
#import <Foundation/Foundation.h> | ||
|
||
#if TARGET_OS_IOS || TARGET_OS_WATCH | ||
@class UNNotificationResponse; | ||
#endif | ||
@class ACPExtension, ACPMobileVisitorId; | ||
|
||
@interface ACPCore : NSObject {} | ||
|
||
#pragma mark - enums | ||
|
||
/** | ||
* @brief An enum type representing different levels of logging used by the SDK. | ||
* | ||
* @see ACPCore::setLogLevel: | ||
*/ | ||
typedef NS_ENUM(NSUInteger, ACPMobileLogLevel) { | ||
ACPMobileLogLevelError = 0, | ||
ACPMobileLogLevelWarning = 1, | ||
ACPMobileLogLevelDebug = 2, | ||
ACPMobileLogLevelVerbose = 3 | ||
}; | ||
|
||
/** | ||
* @brief An enum type representing the possible Opt-Out and Privacy settings. | ||
* | ||
* The possible values for the Adobe Mobile Privacy Status. The privacy status controls whether | ||
* specific activity is allowed on the device. The default privacy status is set in any ADBMobile JSON configuration | ||
* file using the parameter `global.privacy`. Use ACPCore::setPrivacyStatus: to override the | ||
* default privacy status. | ||
* | ||
* @see ACPCore::getPrivacyStatus: | ||
* @see ACPCore::setPrivacyStatus: | ||
*/ | ||
typedef NS_ENUM(NSInteger, ACPMobilePrivacyStatus) { | ||
ACPMobilePrivacyStatusOptIn, ///< Adobe Mobile Privacy Status opted-in | ||
ACPMobilePrivacyStatusOptOut, ///< Adobe Mobile Privacy Status opted-out | ||
ACPMobilePrivacyStatusUnknown ///< Adobe Mobile Privacy Status is unknown | ||
}; | ||
|
||
/** | ||
* @brief An enum type representing possible authentication states for Experience Cloud visitors. | ||
* | ||
* @see syncIdentifier | ||
*/ | ||
typedef NS_ENUM(NSUInteger, ACPMobileVisitorAuthenticationState) { | ||
ACPMobileVisitorAuthenticationStateUnknown = 0, /*!< Enum value ACPMobileVisitorAuthenticationStateUnknown. */ | ||
ACPMobileVisitorAuthenticationStateAuthenticated = 1, /*!< Enum value ACPMobileVisitorAuthenticationStateAuthenticated. */ | ||
ACPMobileVisitorAuthenticationStateLoggedOut = 2 /*!< Enum value ACPMobileVisitorAuthenticationStateLoggedOut. */ | ||
}; | ||
|
||
#pragma mark - Configuration | ||
|
||
/** | ||
* @brief Load remote configuration specified by the given application ID | ||
* | ||
* Configure the SDK by downloading the remote configuration file hosted on Adobe servers | ||
* specified by the given application ID. The configuration file is cached once downloaded | ||
* and used in subsequent calls to this API. If the remote file is updated after the first | ||
* download, the updated file is downloaded and replaces the cached file. | ||
* | ||
* The \p appid is preserved, and on application restarts, the remote configuration file specified by \p appid | ||
* is downloaded and applied to the SDK. | ||
* | ||
* On failure to download the remote configuration file, the SDK is configured using the cached | ||
* file if it exists, or if no cache file exists then the existing configuration remains unchanged. | ||
* | ||
* Calls to this API will replace any existing SDK configuration except those set using | ||
* ACPCore::updateConfiguration: or ACPCore::setPrivacyStatus:. Configuration updates | ||
* made using ACPCore::updateConfiguration: | ||
* and ACPCore::setPrivacyStatus: are always applied on top of configuration changes made using this API. | ||
* | ||
* @param appid a unique identifier assigned to the app instance by the Adobe Mobile Services. It is automatically | ||
* added to the ADBMobile JSON file when downloaded from the Adobe Mobile Services UI and can be | ||
* found in Manage App Settings. A value of `nil` has no effect. | ||
*/ | ||
+ (void) configureWithAppId: (NSString* __nullable) appid; | ||
|
||
/** | ||
* @brief Load configuration from local file | ||
* | ||
* Configure the SDK by reading a local file containing the JSON configuration. On application relaunch, | ||
* the configuration from the file at \p filepath is not preserved and this method must be called again if desired. | ||
* | ||
* On failure to read the file or parse the JSON contents, the existing configuration remains unchanged. | ||
* | ||
* Calls to this API will replace any existing SDK configuration except those set using | ||
* ACPCore::updateConfiguration: or ACPCore::setPrivacyStatus:. Configuration updates | ||
* made using ACPCore::updateConfiguration: | ||
* and ACPCore::setPrivacyStatus: are always applied on top of configuration changes made using this API. | ||
* | ||
* @param filepath absolute path to a local configuration file. A value of `nil` has no effect. | ||
*/ | ||
+ (void) configureWithFileInPath: (NSString* __nullable) filepath; | ||
|
||
/** | ||
* @brief Calls the provided callback with a JSON string containing all of the User's identifiers known by the SDK | ||
* @param callback a void-returning method that has an NSString param containing a JSON string | ||
*/ | ||
+ (void) getAllIdentifiers: (nullable void (^) (NSString* __nullable content)) callback; | ||
|
||
/** | ||
* @brief Get the current Adobe Mobile Privacy Status | ||
* | ||
* Gets the currently configured \ref ACPMobilePrivacyStatus and passes it as a parameter to the given void function. | ||
* | ||
* @param callback method invoked with the configured privacy status as a parameter | ||
* @see ACPMobilePrivacyStatus | ||
*/ | ||
+ (void) getPrivacyStatus: (nonnull void (^) (ACPMobilePrivacyStatus status)) callback; | ||
|
||
/** | ||
* @brief Gets the version. | ||
* | ||
* @return a string pointer containing the version value. | ||
*/ | ||
+ (nonnull NSString*) sdkVersion; | ||
|
||
/** | ||
* @brief set the app group used to sharing user defaults and files among containing app and extension apps | ||
* @note This *must* be called in AppDidFinishLaunching and before any other interactions with the Adobe Mobile library have happened. | ||
* Only the first call to this function will have any effect. | ||
*/ | ||
+ (void) setAppGroup: (nullable NSString*) appGroup; | ||
|
||
/** | ||
* @brief Set the logging level of the SDK | ||
* | ||
* @param logLevel ACPCore::ACPMobileLogLevel to be used by the SDK | ||
* @see ACPMobileLogLevel | ||
*/ | ||
+ (void) setLogLevel: (ACPMobileLogLevel) logLevel; | ||
|
||
/** | ||
* @brief Set the Adobe Mobile Privacy status | ||
* | ||
* Sets the \ref ACPMobilePrivacyStatus for this SDK. The set privacy status is preserved and applied over any new | ||
* configuration changes from calls to ACPCore::configureWithAppId: or ACPCore::configureWithFileInPath:, | ||
* even across application restarts. | ||
* | ||
* @param status ACPCore::ACPMobilePrivacyStatus to be set to the SDK | ||
* @see ACPMobilePrivacyStatus | ||
*/ | ||
+ (void) setPrivacyStatus: (ACPMobilePrivacyStatus) status; | ||
|
||
/** | ||
* @brief Update specific configuration parameters | ||
* | ||
* Update the current SDK configuration with specific key/value pairs. Keys not found in the current | ||
* configuration are added. Configuration updates are preserved and applied over existing or new | ||
* configurations set by calling ACPCore::configureWithAppId: or ACPCore::configureWithFileInPath:, | ||
* even across application restarts. | ||
* | ||
* Using `nil` values is allowed and effectively removes the configuration parameter from the current configuration. | ||
* | ||
* @param config configuration key/value pairs to be updated or added. A value of `nil` has no effect. | ||
*/ | ||
+ (void) updateConfiguration: (NSDictionary* __nullable) config; | ||
|
||
#pragma mark - Extensions | ||
|
||
/* | ||
* @brief Register an extension class derived from `ACPExtension` with a unique name. | ||
* | ||
* This call validates the parameters to ensure name is not empty, name is unique and parent class is ACPExtension. | ||
* If validation fails, NO is returned and if `error` is provided an NSError* is passed back with more details. | ||
* If validation succeeds, YES is returned and the extension will be instantiated and registered by the event hub on another thread. | ||
* | ||
* In order to ensure that the extension can see all events (including the BOOTED event), `registerExtension` should be called | ||
* from your AppDelegate's `application:didFinishLaunchingWithOptions` method. This call should be before any calls into | ||
* the AdobeMarketingMobile interface except `setLogLevel`. | ||
* | ||
* @param extensionClass A class whose parent is `ACPExtension`. | ||
* @param error An optional parameter where an NSError* will be returned if valid and NO was returned | ||
* @return YES if registration params are valid, NO otherwise. | ||
*/ | ||
+ (BOOL) registerExtension: (nonnull Class) extensionClass | ||
error: (NSError* _Nullable* _Nullable) error; | ||
|
||
#pragma mark - Rules Engine | ||
|
||
/** | ||
* RulesEngine API to download and refresh rules from the server. | ||
* | ||
* Forces Rules Engine to send a network request to the rules url in Configuration, | ||
* to refresh rules content set in the SDK. | ||
*/ | ||
|
||
+ (void) downloadRules; | ||
|
||
@end | ||
|
||
/** | ||
* @class ACPMobileVisitorId contains Visitor Id origin, identitfier type, identifier value and authentication state. | ||
* @see getIdentifiers: | ||
*/ | ||
@interface ACPMobileVisitorId : NSObject | ||
@property(nonatomic, strong, nullable) NSString* idOrigin; | ||
@property(nonatomic, strong, nullable) NSString* idType; | ||
@property(nonatomic, strong, nullable) NSString* identifier; | ||
@property(nonatomic, readwrite) ACPMobileVisitorAuthenticationState authenticationState; | ||
@end |
34 changes: 34 additions & 0 deletions
34
ACPIdentity_iOS.framework/Frameworks/ACPCore_iOS.framework/Headers/ACPCore_iOS.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
/* ************************************************************************ | ||
* | ||
* ADOBE CONFIDENTIAL | ||
* ___________________ | ||
* | ||
* Copyright 2018 Adobe Systems Incorporated | ||
* All Rights Reserved. | ||
* | ||
* NOTICE: All information contained herein is, and remains | ||
* the property of Adobe Systems Incorporated and its suppliers, | ||
* if any. The intellectual and technical concepts contained | ||
* herein are proprietary to Adobe Systems Incorporated and its | ||
* suppliers and are protected by trade secret or copyright law. | ||
* Dissemination of this information or reproduction of this material | ||
* is strictly forbidden unless prior written permission is obtained | ||
* from Adobe Systems Incorporated. | ||
**************************************************************************/ | ||
|
||
#import <UIKit/UIKit.h> | ||
|
||
//! Project version number for AdobeMobileMarketingCore_iOS. | ||
FOUNDATION_EXPORT double AdobeMobileMarketingCore_iOSVersionNumber; | ||
|
||
//! Project version string for AdobeMobileMarketingCore_iOS. | ||
FOUNDATION_EXPORT const unsigned char AdobeMobileMarketingCore_iOSVersionString[]; | ||
|
||
// import platform core public headers | ||
#import <ACPCore_iOS/ACPExtension.h> | ||
#import <ACPCore_iOS/ACPExtensionApi.h> | ||
#import <ACPCore_iOS/ACPExtensionError.h> | ||
#import <ACPCore_iOS/ACPExtensionEvent.h> | ||
#import <ACPCore_iOS/ACPExtensionListener.h> | ||
#import <ACPCore_iOS/ACPCore.h> | ||
#import <ACPCore_iOS/ACPMobileVisitorId.h> |
81 changes: 81 additions & 0 deletions
81
ACPIdentity_iOS.framework/Frameworks/ACPCore_iOS.framework/Headers/ACPExtension.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
/* ************************************************************************** | ||
* | ||
* ADOBE CONFIDENTIAL | ||
* ___________________ | ||
* | ||
* Copyright 2018 Adobe Systems Incorporated | ||
* All Rights Reserved. | ||
* | ||
* NOTICE: All information contained herein is, and remains | ||
* the property of Adobe Systems Incorporated and its suppliers, | ||
* if any. The intellectual and technical concepts contained | ||
* herein are proprietary to Adobe Systems Incorporated and its | ||
* suppliers and are protected by trade secret or copyright law. | ||
* Dissemination of this information or reproduction of this material | ||
* is strictly forbidden unless prior written permission is obtained | ||
* from Adobe Systems Incorporated. | ||
****************************************************************************/ | ||
|
||
#ifndef ADOBEMOBILE_ADBEXTENSIONINTERFACE_H | ||
#define ADOBEMOBILE_ADBEXTENSIONINTERFACE_H | ||
|
||
#import <Foundation/Foundation.h> | ||
#import "ACPExtensionApi.h" | ||
|
||
@interface ACPExtension : NSObject {} | ||
|
||
/* | ||
* @brief Initialize a new extension instance. | ||
* Implementers can override this and call into the core via `self.api` e.g. to set listeners. | ||
* The `api` method returns a valid interface even during `init`, since it will be created prior to `init` being called. | ||
* @return Valid instance of the extension or nil | ||
* | ||
*/ | ||
- (nullable instancetype) init; | ||
|
||
/* | ||
* @brief Get extension name for use by the event hub to managing shared state and for logging. | ||
* This MUST be overridden by the extension. | ||
* This will be called at least once before {@code init}. Use a static initializer, don't wait for `init` method. | ||
* If `nil` is returned, the extension will not be registered. | ||
* | ||
* @return NSString containing the extensions name | ||
* | ||
*/ | ||
- (nullable NSString*) name; | ||
|
||
/* | ||
* @brief Get extension version as a string for use by the event hub for logging. | ||
* This should be overridden by the extension. | ||
* If it is not overridden, `nil` will be returned and logged for the extension. | ||
* | ||
* @return NSString containing the extensions version | ||
* | ||
*/ | ||
- (nullable NSString*) version; | ||
|
||
/* | ||
* @brief Called when an unexpected error related to this extension has occurred during SDK processing. | ||
* Implementers should override this to see what errors are occurring and handle them as needed. | ||
* This should be called very infrequently for a well written extension implementation. | ||
* @return | ||
* | ||
*/ | ||
- (void) unexpectedError: (nonnull NSError*) error; | ||
|
||
/* | ||
* @brief Called when the extension is unregistered by the core. | ||
* Implementers can override this to clean up resources when the extension is released. | ||
* | ||
*/ | ||
- (void) onUnregister; | ||
|
||
/* | ||
* @brief This provides the services the extension will need. | ||
* | ||
*/ | ||
@property(nonatomic, readonly) ACPExtensionApi* _Nonnull api; | ||
|
||
@end | ||
|
||
#endif /* ADOBEMOBILE_ADBEXTENSIONINTERFACE_H */ |
Oops, something went wrong.