Per utilizzare l'estensione Luoghi monitor, completare le seguenti operazioni:
Non esistono attività di configurazione per l’estensione Monitor luoghi.
Luoghi
Indicazioni sull'aggiunta dell'estensione Places Monitor all'applicazione Android o iOS sono riportate di seguito.
Il supporto della piattaforma per l'estensione Places Monitor include:
Cordova Places Monitor
Reazione del monitor Luoghi nativi
In Android, completa i seguenti passaggi:
Aggiungi l'estensione Places Monitor e l'estensione Places al progetto utilizzando il file gradle dell'app.
Includete anche i servizi Google Location più recenti nel file gradle.
implementation 'com.adobe.marketing.mobile:places:1.+'
implementation 'com.adobe.marketing.mobile:places-monitor:1.+'
implementation 'com.adobe.marketing.mobile:sdk-core:1.+'
implementation 'com.google.android.gms:play-services-location:16.0.0'
Importa l’estensione Places Monitor nell’attività principale dell’applicazione.
import com.adobe.marketing.mobile.PlacesMonitor;
In iOS, completa i seguenti passaggi:
Podfile
CocoaPods aggiungendo il pod 'ACPPlacesMonitor'
.#import "ACPCore.h"
#import "ACPPlaces.h"
#import "ACPPlacesMonitor.h"
import ACPCore
import ACPPlaces
import ACPPlacesMonitor
È necessario registrarsi e avviare il Monitor posizioni in Android o iOS.
In Android, completa i seguenti passaggi:
Nel metodo della tua app OnCreate
registrati le estensioni Places Monitor:
public class MobileApp extends Application {
@Override
public void onCreate() {
super.onCreate();
MobileCore.setApplication(this);
MobileCore.ConfigureWithAppId("yourAppId");
try {
PlacesMonitor.registerExtension(); //Register PlacesMonitor with Mobile Core
Places.registerExtension(); //Register Places with Mobile Core
MobileCore.start(null);
PlacesMonitor.start();//Start monitoring the geo-fences
} catch (Exception e) {
//Log the exception
}
}
}
Il monitoraggio dei luoghi dipende dall'estensione Luoghi. Quando installi manualmente l’estensione Monitor Luoghi, accertati di aggiungere anche la libreria places.aar
al progetto.
Nell'app iOSapplication:didFinishLaunchingWithOptions
, registrati PlacesMonitor
e posizioni con Mobile Core:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
[ACPCore configureWithAppId:@"yourAppId"];
[ACPPlaces registerExtension];
[ACPPlacesMonitor registerExtension];
[ACPCore start:^{
// do other initialization required for the SDK
[ACPPlacesMonitor start];
}];
return YES;
}
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
ACPCore.configure(withAppId: "yourAppId")
ACPPlaces.registerExtension()
ACPPlacesMonitor.registerExtension()
ACPCore.start({
// do other initialization required for the SDK
ACPPlacesMonitor.start()
})
// Override point for customization after application launch.
return true
}
Il monitoraggio dei luoghi dipende dall'estensione Luoghi. When manually installing the Places Monitor extension, ensure that you also add the libACPPlaces_iOS.a
library to your project.
Java
Per tutte le versioni di Android, per dichiarare che la tua app richiede l'autorizzazione di posizione, aggiungi un <uses-permission>
elemento nel manifesto dell'app, come figlio dell' <manifest>
elemento di livello principale. Per le applicazioni Android che hanno come destinazione API di livello 29 e superiore, per consentire all'app di accedere alla posizione in background, includete l'autorizzazione ACCESS_BACKGROUND_LOCATION.
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.adobe.placesapp">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
// Only for Android apps targeting API level 29 and above
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<application>
...
</application>
</manifest>
iOS supporta la distribuzione di eventi di posizione alle app che vengono sospese o che non sono più in esecuzione. Per ricevere gli aggiornamenti sulla posizione in background per l’estensione di Monitoraggio luoghi, configura la funzionalità di aggiornamento della posizione per l’app in Xcode.background-location-updates
.
Nel Info.plist
file dell'app devono essere incluse le seguenti chiavi:
NSLocationWhenInUseUsageDescription
- il testo deve descrivere il motivo per cui l'app richiede l'accesso alle informazioni sulla posizione dell'utente durante l'esecuzione in primo piano.NSLocationAlwaysAndWhenInUseUsageDescription
- il testo deve descrivere il motivo per cui l'app richiede l'accesso alle informazioni sulla posizione dell'utente in qualsiasi momento.Se l'app supporta iOS 10 e versioni precedenti, è necessaria anche la NSLocationAlwaysUsageDescription
chiave.