Geofence
Monitors circular geofences around latitude/longitude coordinates, and sends a notification to the user when the boundary of a geofence is crossed. Notifications can be sent when the user enters and/or exits a geofence. Geofences persist after device reboot. Geofences will be monitored even when the app is not running.
联系我们?
![](http://www.ionic.wang/statics/images/native-cordova-bot.png)
If you're building a serious project, you can't afford to spend hours troubleshooting. Ionic's experts offer official maintenance, support, and integration help.
Ionic Geofence插件的安装(Installation)
Ionic EE comes with fully supported and maintained plugins from the Ionic Team. Learn More or Contact Us
Ionic Geofence插件支持的平台(Supported Platforms)
- Android
- iOS
- Windows
- Windows Phone 8
Ionic Geofence插件的用法(Usage)
import { Geofence } from '@ionic-native/geofence/ngx';
...
constructor(private geofence: Geofence) {
// initialize the plugin
geofence.initialize().then(
// resolved promise does not return a value
() => console.log('Geofence Plugin Ready'),
(err) => console.log(err)
)
}
...
private addGeofence() {
//options describing geofence
let fence = {
id: '69ca1b88-6fbe-4e80-a4d4-ff4d3748acdb', //any unique ID
latitude: 37.285951, //center of geofence radius
longitude: -121.936650,
radius: 100, //radius to edge of geofence in meters
transitionType: 3, //see 'Transition Types' below
notification: { //notification settings
id: 1, //any unique ID
title: 'You crossed a fence', //notification title
text: 'You just arrived to Gliwice city center.', //notification body
openAppOnClick: true //open app when notification is tapped
}
}
this.geofence.addOrUpdate(fence).then(
() => console.log('Geofence added'),
(err) => console.log('Geofence failed to add')
);
}
Transition Types
Transition type specifies whether the geofence should trigger when the user enters and/or leaves the geofence.
Supported values
- 1: Enter
- 2: Leave
- 3: Both
Defining a Geofence
Geofences are defined by an object that is passed to addOrUpdate()
. Object properties are:
- id: Any unique ID for the geofence. This ID is used to remove and update a geofence
- latitude: Latitude coordinate of the center of the geofence radius
- longitude: Latitude coordinate of the center of the geofence radius
- radius: Radius from the center to the edge of the geofence
- transitionType: Type of geofence transition to monitor for. See 'Transition Types' above
- notification: Object. Options for defining the notification sent when a geofence is crossed
- id: Any unique ID
- title: Notification title
- text: Notification body
- openAppOnClick: Boolean. Whether to open the app when the notification is tapped by the user
Troubleshooting
I get compile errors when I run ionic build ios
or ionic run ios
.
This could be caused by the Cordova project directory in /platforms/ios
not being named correctly.
Try running ionic cordova platform rm
then run ionic cordova platform add
to recreate the
platform directories.