Contents

adobe/aepsdk-edge-ios

Adobe Experience Platform Edge Network mobile extension in Swift

About this project

The Adobe Experience Platform Edge Network mobile extension enables data transmission to the Edge Network from a mobile application. This extension enables the implementation of Adobe Experience Cloud capabilities, allowing multiple Adobe solutions to be used through a single network call and forwarding the information to Adobe Experience Platform.

The Edge Network mobile extension is part of the Adobe Experience Platform Mobile SDK and requires the AEPCore and AEPServices extensions for event handling. The AEPEdgeIdentity extension is also required for identity management, such as managing Experience Cloud IDs (ECID).

For more details, see the Adobe Experience Platform Edge Network documentation.

Requirements

  • Xcode 15 (or newer)
  • Swift 5.1 (or newer)

Installation

The following installation options are currently supported:

CocoaPods

Refer to the CocoaPods documentation for more details.

# Podfile
use_frameworks!

# For app development, include all of the following dependencies
target 'YOUR_TARGET_NAME' do
  pod 'AEPCore'
  pod 'AEPEdge'
  pod 'AEPEdgeIdentity'
end

# For extension development, include AEPCore, AEPEdge, and their dependencies
target 'YOUR_TARGET_NAME' do
  pod 'AEPCore'
  pod 'AEPEdge'
end

Replace YOUR_TARGET_NAME in the Podfile, and then, in the Podfile directory, run:

$ pod install

Swift Package Manager

Refer to the Swift Package Manager documentation for more details.

To add the AEPEdge package to the application, select:

File > Add Package Dependencies from the Xcode menu.

[!NOTE] Menu options may vary depending on the Xcode version being used.

Enter the repository URL for the AEPEdge package: https://github.com/adobe/aepsdk-edge-ios.git.

When prompted, specify a version or a range of versions for the version rule.

Alternatively, to add AEPEdge directly to the dependencies in a project with a Package.swift file, use the following configuration:

dependencies: [
    .package(url: "https://github.com/adobe/aepsdk-edge-ios.git", .upToNextMajor(from: "5.0.0"))
],
targets: [
    .target(
        name: "YourTarget",
        dependencies: ["AEPEdge"],
        path: "your/path"
    )
]

Binaries

To generate an AEPEdge.xcframework, use the following command:

make archive

The generated xcframework will be located in the build folder. Drag and drop the .xcframeworks into the app target in Xcode.

Development

To set up the environment after cloning or downloading the project for the first time, run the following command from the root directory:

make pod-install

To update the environment, use the following command:

make pod-update

Open the Xcode workspace

To open the workspace in Xcode, run the following command from the root directory of the repository:

make open

Command line integration

To run all test suites from the command line, use the following command:

make test

Code style

This project uses SwiftLint to check and enforce Swift style and conventions. Style checks are automatically applied when the project is built from Xcode.

To install the required tools and enable the Git pre-commit hook for automatic style correction on each commit, update the project's Git config core.hooksPath by running:

make setup-tools

Contributing

Contributions are welcomed! See the Contributing Guide for more information.

Licensing

This project is licensed under the Apache V2 License. See LICENSE for more information.

Security policy

See the SECURITY POLICY for more details.

Package Metadata

Repository: adobe/aepsdk-edge-ios

Stars: 17

Forks: 24

Open issues: 13

Default branch: main

Primary language: swift

License: Apache-2.0

Topics: adobe-edge-network, adobe-experience-platform, aep-mobile-sdk

README: README.md