Advertisement
Guest User

Untitled

a guest
Nov 18th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.01 KB | None | 0 0
  1. package com.example.maptest;
  2.  
  3. import android.os.Bundle;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.widget.Toast;
  6.  
  7. import com.example.maptest.model.Geofence;
  8. import com.example.maptest.model.GeofenceClient;
  9. import com.example.maptest.model.GeofenceTransition;
  10. import com.mapbox.android.core.location.LocationEngine;
  11. import com.mapbox.android.core.location.LocationEngineProvider;
  12. import com.mapbox.mapboxsdk.geometry.LatLng;
  13.  
  14. import java.util.ArrayList;
  15. import java.util.List;
  16.  
  17. public class GeofenceActivity extends AppCompatActivity implements GeofenceTransition {
  18.  
  19.     private static final int RADIUS_IN_METERS = 20;
  20.     private List<Geofence> geofences;
  21.     private GeofenceClient geofenceClient;
  22.     private LocationEngine engine;
  23.  
  24.  
  25.     @Override
  26.     protected void onCreate(Bundle savedInstanceState) {
  27.         super.onCreate(savedInstanceState);
  28.         setContentView(R.layout.activity_geofence);
  29.         geofences = generateGeofences();
  30.         engine = LocationEngineProvider.getBestLocationEngine(this);
  31.         geofenceClient = new GeofenceClient(geofences, engine, this);
  32.         geofenceClient.start();
  33.     }
  34.  
  35.     @Override
  36.     protected void onDestroy() {
  37.         super.onDestroy();
  38.         if (geofenceClient.isRunning()) {
  39.             geofenceClient.stop();
  40.         }
  41.     }
  42.  
  43.     @Override
  44.     public void onGeofenceEnter(Geofence geofence) {
  45.         Toast.makeText(this, "ENTERED GEOFENCE", Toast.LENGTH_SHORT).show();
  46.     }
  47.  
  48.     @Override
  49.     public void onGeofenceExit(Geofence geofence) {
  50.         Toast.makeText(this, "EXITED GEOFENCE", Toast.LENGTH_SHORT).show();
  51.     }
  52.  
  53.     private List<Geofence> generateGeofences() {
  54.         List<Geofence> geofences = new ArrayList<>();
  55.         for (int i = 0; i < 10; i++) {
  56.             Geofence geofence = new Geofence.Builder()
  57.                     .addCenter(new LatLng())
  58.                     .addRadius(RADIUS_IN_METERS).build();
  59.             geofences.add(geofence);
  60.         }
  61.         return geofences;
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement