Show Menu
SUJETS×

Extension Places

L’extension Places vous permet d’agir en fonction de l’emplacement de vos utilisateurs. Cette extension est l'interface des API du service de requête Places. En écoutant les événements qui contiennent des coordonnées GPS et des événements de région de géofence, cette extension distribue les nouveaux événements qui sont traités par le moteur de règles. L’extension Places récupère et fournit également une liste des points d’intérêt les plus proches pour les données de l’application récupérées à partir des API. Les régions renvoyées par les API sont stockées dans le cache et la persistance, ce qui permet un traitement hors ligne limité.

Installation de l’extension Places dans Adobe Experience Platform Launch

  1. In Experience Platform Launch, click the Extensions tab.
  2. Dans l’ Catalog onglet, recherchez l’ Places extension, puis cliquez sur Install .
  3. Sélectionnez les bibliothèques Places que vous souhaitez utiliser dans cette propriété. Ce sont les bibliothèques qui seront accessibles dans votre application.
  4. Cliquez sur Save (Exécuter des tests d’Auditor).
    Lorsque vous cliquez sur Save , le SDK de la plate-forme d’expérience recherche des points d’accès dans les services Places dans les bibliothèques que vous avez sélectionnées. Les données d’API ne sont pas incluses dans le téléchargement de la bibliothèque lorsque vous créez l’application, mais un sous-ensemble d’API basé sur l’emplacement est téléchargé sur le périphérique de l’utilisateur final au moment de l’exécution et est basé sur les coordonnées GPS de l’utilisateur.
  5. Terminez le processus de publication pour mettre à jour la configuration du SDK.
    Pour plus d’informations sur la publication dans Experience Platform Launch, voir Publication .

Configure the Places extension

Ajout de l’extension Places à votre application

Vous pouvez ajouter l’extension Places à vos applications Android et iOS.

Android

Pour ajouter l’extension Places à votre application à l’aide de Java :
  1. Ajoutez l’extension Places à votre projet à l’aide du fichier de nivellement de votre application.
    implementation 'com.adobe.marketing.mobile:places:1.+'
    implementation 'com.adobe.marketing.mobile:sdk-core:1.+'
    
    
  2. Importez l’extension Places dans l’activité principale de votre application.
    import com.adobe.marketing.mobile.Places;
    
    

iOS

Pour ajouter l'extension Places à votre application à l'aide de Objective-C ou Swift :
  1. Ajoutez les bibliothèques Places et Mobile Core à votre projet. Vous devez ajouter les conteneurs suivants à votre Podfile :
    pod 'ACPPlaces', '~> 1.0'
    pod 'ACPCore', '~> 2.0'    # minimum Core version for Places is 2.0.3
    
    
    Sinon, si vous n'utilisez pas Cocoapods, vous pouvez inclure manuellement les bibliothèques Mobile Core et Places de notre page de publication sur Github.
  2. Mettez à jour vos Cocoapods :
    pod update
    
    
  3. Ouvrez Xcode et, dans la classe AppDelegate, importez les en-têtes Core et Places :
    Objective-C
    #import "ACPCore.h"
    #import "ACPPlaces.h"
    
    
    Swift
    import ACPCore
    import ACPPlaces
    
    

Enregistrement de l’extension Places avec Mobile Core

Vous devez enregistrer l’extension Places avec Mobile Core dans Android et iOS.

Android

Dans la OnCreate méthode de votre application, enregistrez les extensions Places :
public class PlacesTestApp extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        MobileCore.setApplication(this);

        try {
            Places.registerExtension();
            MobileCore.start(null);
        } catch (Exception e) {
            Log.e("PlacesTestApp", e.getMessage());
        }
    }
}

iOS

Dans la application:didFinishLaunchingWithOptions: méthode de votre application, enregistrez l’extension Places avec vos autres appels d’enregistrement SDK :
Objective-C
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // make other sdk registration calls
    [ACPPlaces registerExtension];    
    return YES;
}

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

Modification de la durée de vie de l’abonnement aux emplacements

Les données d’emplacement peuvent rapidement devenir obsolètes, en particulier si le périphérique ne reçoit pas de mises à jour d’emplacement en arrière-plan.
Contrôlez la durée de vie des données d’adhésion Places sur le périphérique en définissant le paramètre de places.membershipttl configuration. La valeur transmise représente le nombre de secondes pendant lesquelles l’état Places reste valide pour le périphérique.

Android

Dans le rappel de MobileCore.start() mettre à jour la configuration avec les modifications nécessaires avant d’appeler lifecycleStart :
public class PlacesTestApp extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        MobileCore.setApplication(this);

        try {
            Places.registerExtension();
            MobileCore.start(new AdobeCallback() {
                @Override
                public void call(Object o) {
                    // switch to your App ID from Launch
                    MobileCore.configureWithAppID("my-app-id");

                    final Map<String, Object> config = new HashMap<>();
                    config.put("places.membershipttl", 30);
                    MobileCore.updateConfiguration(config);

                    MobileCore.lifecycleStart(null);
                }
            });
        } catch (Exception e) {
            Log.e("PlacesTestApp", e.getMessage());
        }
    }
}

iOS

Sur la première ligne du rappel de la ACPCore méthode de start: la variable, appelez updateConfiguration:
Objective-C
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // make other sdk registration calls

    const UIApplicationState appState = application.applicationState;
    [ACPCore start:^{
        [ACPCore updateConfiguration:@{@"places.membershipttl":@(30)}];

        if (appState != UIApplicationStateBackground) {
            [ACPCore lifecycleStart:nil];            
        }
    }];

    return YES;
}

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

    let appState = application.applicationState;            
    ACPCore.start {
        ACPCore.updateConfiguration(["places.membershipttl" : 30])

        if appState != .background {
            ACPCore.lifecycleStart(nil)
        }    
    }

    return true;
}

Clés de configuration

Pour mettre à jour la configuration du SDK par programmation au moment de l’exécution, utilisez les informations suivantes pour modifier les valeurs de configuration de l’extension Places. Pour plus d’informations, voir Référence sur les API de configuration.
Clé
Obligatoire
Description
places.libraries
Oui
Bibliothèques d’extensions Places pour l’application mobile. Il spécifie l’ID de bibliothèque et le nom de la bibliothèque que l’application mobile prend en charge.
places.endpoint
Oui
Point de fin Places Query Service par défaut, utilisé pour obtenir des informations sur les bibliothèques et les points d’accès (POI).
places.membershipttl
Non
Valeur par défaut : 3 600 (secondes dans une heure). Indique la durée, en secondes, pendant laquelle les informations d’adhésion Places pour le périphérique resteront valides.