geofencing

Last updated:

0 purchases

geofencing Image
geofencing Images
Add to Cart

Description:

geofencing

Author's Note: this plugin is not officially supported and is meant to be used as an example. Please feel free to pull it into your own projects, but there is no official version hosted on pub.dev and support may be limited. If you run into any issues running this sample, please file an issue or, even better, submit a pull request!
What is geofencing?
here
Geofencing #
A sample geofencing plugin with background execution support for Flutter.
Getting Started #
This plugin works on both Android and iOS. Follow the instructions in the following sections for the
platforms which are to be targeted.
Android #
Add the following lines to your AndroidManifest.xml to register the background service for
geofencing:
<receiver android:name="io.flutter.plugins.geofencing.GeofencingBroadcastReceiver"
android:enabled="true" android:exported="true"/>
<service android:name="io.flutter.plugins.geofencing.GeofencingService"
android:permission="android.permission.BIND_JOB_SERVICE" android:exported="true"/>
copied to clipboard
Also request the correct permissions for geofencing:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
copied to clipboard
Finally, create either Application.kt or Application.java in the same directory as MainActivity.
For Application.kt, use the following:
class Application : FlutterApplication(), PluginRegistrantCallback {
override fun onCreate() {
super.onCreate();
GeofencingService.setPluginRegistrant(this);
}

override fun registerWith(registry: PluginRegistry) {
GeneratedPluginRegistrant.registerWith(registry);
}
}
copied to clipboard
For Application.java, use the following:
public class Application extends FlutterApplication implements PluginRegistrantCallback {
@Override
public void onCreate() {
super.onCreate();
GeofencingService.setPluginRegistrant(this);
}

@Override
public void registerWith(PluginRegistry registry) {
GeneratedPluginRegistrant.registerWith(registry);
}
}
copied to clipboard
Which must also be referenced in AndroidManifest.xml:
<application
android:name=".Application"
...
copied to clipboard
iOS #
Add the following lines to your Info.plist:
<dict>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>YOUR DESCRIPTION HERE</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>YOUR DESCRIPTION HERE</string>
...
copied to clipboard
And request the correct permissions for geofencing:
<dict>
...
<string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>location-services</string>
<string>gps</string>
<string>armv7</string>
</array>
<key>UIBackgroundModes</key>
<array>
<string>location</string>
</array>
...
</dict>
copied to clipboard
Need Help? #
For help getting started with Flutter, view our online
documentation.
For help on editing plugin code, view the documentation.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.