@adobe/cordova-acpplaces v0.0.1
Adobe Experience Platform - Places plugin for Cordova apps
Prerequisites
Cordova is distributed via Node Package Management (aka - npm).
In order to install and build Cordova applications you will need to have Node.js installed. Install Node.js.
Once Node.js is installed, you can install the Cordova framework from terminal:
sudo npm install -g cordova Installation
To start using the Places plugin for Cordova, navigate to the directory of your Cordova app and install the plugin:
cordova plugin add https://github.com/adobe/cordova-acpplaces.gitCheck out the documentation for help with APIs
Usage
Getting the SDK version:
ACPPlaces.extensionVersion(function(version){
console.log(version);
}, function(error){
console.log(error);
});Registering the extension with ACPCore:
Note: It is required to initialize the SDK via native code inside your AppDelegate and MainApplication for iOS and Android respectively. For more information see how to initialize Core.
iOS
#import "ACPPlaces.h"
[ACPPlaces registerExtension]; Android:
import com.adobe.marketing.mobile.Places;
Places.registerExtension();Clear client side Places plugin data:
ACPPlaces.clear(function(response) {
console.log("Successfully cleared Places data.");
}, function(error){
console.log(error);
});Get the current POI's that the device is currently known to be within:
ACPPlaces.getCurrentPointsOfInterest(function(response){
console.log("Current POI's: ", response);
}, function(error){
console.log(error);
}); Get the last latitude and longitude stored in the Places plugin:
ACPPlaces.getLastKnownLocation(function(response) {
console.log("Last known location: ", response);
}, function(error){
console.log(error);
});Get a list of nearby POI's:
var location = {latitude:37.3309422, longitude:-121.8939077};
var limit = 10; // max number of POI's to return
ACPPlaces.getNearbyPointsOfInterest(location, limit, function(response){
console.log("Nearby POI's: ", response);
}, function(error){
console.log(error);
});Pass a Geofence and transition type to be processed by the Places plugin:
var region = {latitude:37.3309422, longitude:-121.8939077, radius:1000};
var geofence = {requestId:"geofence_id", circularRegion:region, expirationDuration:-1};
ACPPlaces.processGeofence(geofence, geo.transitionType, function(response) {
console.log("Successfully processed geofence: ", geofence);
}, function(error){
console.log(error);
});Set the authorization status:
ACPPlaces.setAuthorizationStatus(ACPPlaces.AuthorizationStatusAlways, function(response) {
console.log("Successfully set the authorization status.");
}, function(error){
console.log(error);
});Running Tests
Install cordova-paramedic https://github.com/apache/cordova-paramedic
npm install -g cordova-paramedicRun the tests
cordova-paramedic --platform ios --plugin . --verbosecordova-paramedic --platform android --plugin . --verboseSample App
A Cordova app for testing the plugin is located in the https://github.com/adobe/cordova-acpsample. The app is configured for both iOS and Android platforms.
Contributing
Looking to contribute to this project? Please review our Contributing guidelines prior to opening a pull request.
We look forward to working with you!
Licensing
This project is licensed under the Apache V2 License. See LICENSE for more information.
5 years ago