Giter Site home page Giter Site logo

aepsdk-sample-app-ios's Introduction

AEP SDK Sample App for iOS

Notice of deprecation

Each respective extension repository now has its own test app. Please refer to those repositories for their test apps.

About this Project

This repository contains iOS sample apps for the AEP SDK. Examples are provided for both Objective-c and Swift implementation.

Requirements

  • Xcode 14.1.0 or newer
  • Swift 5.1 or newer (Swift project only)
  • Cocoapods 1.6 or newer

Installation

Swift

  • Navigate to the Swift directory, and run the following command from terminal:

    pod install
    
  • After the above command finishes, open the Xcode workspace:

    open AEPSampleApp.xcworkspace
    
  • Run the AEPSampleApp target on the simulator of your choice.

Objective-c

  • Navigate to the Obj-C directory, and run the following command from terminal:

    pod install
    
  • After the above command finishes, open the Xcode workspace:

    open AEPSampleAppObjC.xcworkspace
    
  • Run the AEPSampleAppObjC target on the simulator of your choice.

Documentation

Launch Edge Extensions Prerequisites

App needs to be configured with the following edge extensions in Launch before it can be used:

Lifecycle for Edge Network

Follow the documentation to forward Lifecycle extension metrics to the Adobe Experience Platform.

Messaging

Follow the documentation for enabling messaging in the sample app.

Contributing

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

Licensing

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

aepsdk-sample-app-ios's People

Contributors

addb avatar archanaadobe avatar cacheung avatar cdhoffmann avatar emdobrin avatar jiabingeng avatar kevinlind avatar littlebutty avatar nporter-adbe avatar praveek avatar pravinpk avatar ravjain-adb avatar sbenedicadb avatar shalehaha avatar swarna04 avatar timkimadobe avatar yangyansong-adbe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aepsdk-sample-app-ios's Issues

Sample app does not build for iOS Swift.

Expected Behaviour

Sample app should build for iOS Swift.

Actual Behaviour

Sample app does not build for iOS Swift.

Reproduce Scenario (including but not limited to)

git clone https://github.com/adobe/aepsdk-sample-app-ios.git
cd aepsdk-sample-app-ios/Swift
pod install
open AEPSampleApp.xcworkspace
(in xCode) : Select iPhone 11 simulator
(in xCode) : Click the "Play" Icon to build and run for the selected simulator.
=========
Build Fails:
Analytics.swift (line 160)
Edge.sendEvent(experienceEvent: experienceEvent, responseHandler: nil)
Extraneous argument label 'responseHandler:' in call
=========

After a manual fix to this line, the build then succeeds.

Steps to Reproduce

See above.

Platform and Version

Mac OS Big Sur 11.1 (20C69)
xCode Version 12.3 (12C33)

Sample Code that illustrates the problem

Logs taken while reproducing problem

AEPMobileTarget getThirdPartyId getting "No third party id available.";"

Team, when i use: AEPMobileTarget getThirdPartyId .
based on below code base,getting "No third party id available."

requestParameters.add(["third-party-id":MFAdobeTracker.shared()?.getThirdyPartyID() as Any])
NSString *thirdPartId = [[MFAdobeTracker sharedTracker] getThirdyPartyID];
if (thirdPartId) {
[clientParams setObject:thirdPartId forKey:@"third-party-id"];
}
——————————————————--------------------

  • (NSString *_Nullable)getThirdyPartyID {
    dispatch_group_t thirdPartyID = dispatch_group_create();
    dispatch_group_enter(thirdPartyID);

    __block NSString *trackingUniqueIdentifier = nil;

    dispatch_group_async(thirdPartyID,dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) , ^{
    [AEPMobileTarget getThirdPartyId:^(NSString * _Nullable trackingIdentifier, NSError * _Nullable error) {
    if (error) {
    [[MVMCoreLoggingHandler sharedLoggingHandler] addErrorToLog:[MVMCoreErrorObject createErrorObjectForNSError:error location:@"MFAdobeTracker->getThirdPartyId"]];
    } else {
    if (trackingIdentifier.length > 0) {
    trackingUniqueIdentifier = trackingIdentifier;
    }
    }
    dispatch_group_leave(thirdPartyID);
    }];
    });

    //Waiting upto one second to get visitorTrackingUniqueID if not returns nil
    dispatch_group_wait(thirdPartyID,dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)));
    return trackingUniqueIdentifier;
    }

————————————————---------------------------------
Getting below console Log:

**2023-03-15 06:20:44.559806+0530 My Verizon[68230:7883185] [AEP SDK WARNING - ] Unable to handle response, No third party id available.

Adding error to log: {
Code = 1A;
Domain = ErrorDomainSystem;
Location = "MFAdobeTracker->getThirdPartyId";
Time = "15/03/23, 6:20:44 AM IST";
appState = active;
appVersion = "10.5.1";
message = "Unable to handle response, No third party id available.";
userMessage = "The operation couldn\U2019t be completed. (AEPTarget.TargetError error 1.)";
}**
————————————————---------------------------

AEPMobileTarget getThirdPartyId getting always "nil" value

AEPMobileTarget getThirdPartyId:^(NSString * _Nullable getThirdPartyId, NSError *error) {
if (error != nil) {
// Handle error
return;
}

    NSLog(@"%@", getThirdPartyId);
}];

team, AEPMobileTarget getThirdPartyId getting always "nil" value.
how i can get value insteadOf nil.

Swift build failed with "Type 'Identity' has no member 'getUrlVariables'"

Expected Behaviour

Build without an error

Actual Behaviour

Build failed with the following error.
.../aepsdk-sample-app-ios/Swift/AEPSampleApp/EdgeIdentityView.swift:138:50: Type 'Identity' has no member 'getUrlVariables'

To fix the problem, need to use the newer AEPEdgeIdentity pod.
e.g.
In Podfile.lock

change from
- AEPEdgeIdentity (1.0.1):
to
- AEPEdgeIdentity (1.1.0):

Reproduce Scenario (including but not limited to)

Steps to Reproduce

Follow https://github.com/adobe/aepsdk-sample-app-ios#swift

Screen Shot 2022-07-29 at 10 20 49 AM

Platform and Version

Sample Code that illustrates the problem

Logs taken while reproducing problem

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.