Show Menu

Places extension

The Places extension allows you to act based on the location of your users. This extension is the interface to the Places Query Service APIs. By listening for events that contain GPS coordinates and geofence region events, this extension dispatches new events that are processed by the Rules Engine. The Places extension also retrieves and delivers a list of the nearest POI for the app data that retrieves from the APIs. The regions returned by the APIs are stored in cache and persistence, which allows limited offline processing.

Install the Places extension in Adobe Experience Platform Launch

  1. In Experience Platform Launch, click the Extensions tab.
  2. On the Catalog tab, locate the Places extension, and click Install .
  3. Select the Places libraries you want to use in this property. These are the libraries that will be accessible in your app.
  4. Click Save .
    When you click Save , the Experience Platform SDK searches the Places Services for POIs in the libraries that you selected. The POI data is not included in the download of the library when you build the app, but a location-based subset of POIs is downloaded to the end user's device at runtime and is based on the user's GPS coordinates.
  5. Complete the publishing process to update the SDK configuration.
    For more information about publishing in Experience Platform Launch, see Publishing .

Configure the Places extension

Add the Places extension to your app

You can add the Places extension to your Android and iOS apps.


To add the Places extension to your app by using Java:
  1. Add the Places extension to your project using your app's gradle file.
    implementation ''
    implementation ''
  2. Import the Places extension in your application's main activity.


To add Places extension to your app by using Objective-C or Swift:
  1. Add the Places and Mobile Core libraries to your project. You will need to add the following pods to your Podfile :
    pod 'ACPPlaces', '~> 1.0'
    pod 'ACPCore', '~> 2.0'    # minimum Core version for Places is 2.0.3
    Alternatively, if you are not using Cocoapods, you can manually include the Mobile Core and the Places libraries from our releases page on Github.
  2. Update your Cocoapods:
    pod update
  3. Open Xcode, and in your AppDelegate class, import the Core and the Places headers:
    #import "ACPCore.h"
    #import "ACPPlaces.h"
    import ACPCore
    import ACPPlaces

Register the Places extension with Mobile Core

You need to register the Places extension with Mobile Core in Android and iOS.


In your App's OnCreate method register the Places extensions:
public class PlacesTestApp extends Application {

    public void onCreate() {

        try {
        } catch (Exception e) {
            Log.e("PlacesTestApp", e.getMessage());


In your App's application:didFinishLaunchingWithOptions: method, register the Places extension with your other SDK registration calls:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // make other sdk registration calls
    [ACPPlaces registerExtension];    
    return YES;

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // make other sdk registration calls
    return true;

Configuration keys

To update the SDK configuration programmatically at runtime, use the following information to change your Places extension configuration values. For more information, see Configuration API Reference .
The Places extension libraries for the mobile app. It specifies the library ID and the name of the library that the mobile app supports.
The default Places Query Service endpoint, which is used to get information about libraries and POIs.