/*
* Copyright (C) 2013 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.example.android.geofence;
/**
* This class defines constants used by location sample apps.
*/
public final class GeofenceUtils {
// Used to track what type of geofence removal request was made.
public enum REMOVE_TYPE {INTENT, LIST}
// Used to track what type of request is in process
public enum REQUEST_TYPE {ADD, REMOVE}
/*
* A log tag for the application
*/
public static final String APPTAG = "Geofence Detection";
// Intent actions
public static final String ACTION_CONNECTION_ERROR =
"com.example.android.geofence.ACTION_CONNECTION_ERROR";
public static final String ACTION_CONNECTION_SUCCESS =
"com.example.android.geofence.ACTION_CONNECTION_SUCCESS";
public static final String ACTION_GEOFENCES_ADDED =
"com.example.android.geofence.ACTION_GEOFENCES_ADDED";
public static final String ACTION_GEOFENCES_REMOVED =
"com.example.android.geofence.ACTION_GEOFENCES_DELETED";
public static final String ACTION_GEOFENCE_ERROR =
"com.example.android.geofence.ACTION_GEOFENCES_ERROR";
public static final String ACTION_GEOFENCE_TRANSITION =
"com.example.android.geofence.ACTION_GEOFENCE_TRANSITION";
public static final String ACTION_GEOFENCE_TRANSITION_ERROR =
"com.example.android.geofence.ACTION_GEOFENCE_TRANSITION_ERROR";
// The Intent category used by all Location Services sample apps
public static final String CATEGORY_LOCATION_SERVICES =
"com.example.android.geofence.CATEGORY_LOCATION_SERVICES";
// Keys for extended data in Intents
public static final String EXTRA_CONNECTION_CODE =
"com.example.android.EXTRA_CONNECTION_CODE";
public static final String EXTRA_CONNECTION_ERROR_CODE =
"com.example.android.geofence.EXTRA_CONNECTION_ERROR_CODE";
public static final String EXTRA_CONNECTION_ERROR_MESSAGE =
"com.example.android.geofence.EXTRA_CONNECTION_ERROR_MESSAGE";
public static final String EXTRA_GEOFENCE_STATUS =
"com.example.android.geofence.EXTRA_GEOFENCE_STATUS";
/*
* Keys for flattened geofences stored in SharedPreferences
*/
public static final String KEY_LATITUDE = "com.example.android.geofence.KEY_LATITUDE";
public static final String KEY_LONGITUDE = "com.example.android.geofence.KEY_LONGITUDE";
public static final String KEY_RADIUS = "com.example.android.geofence.KEY_RADIUS";
public static final String KEY_EXPIRATION_DURATION =
"com.example.android.geofence.KEY_EXPIRATION_DURATION";
public static final String KEY_TRANSITION_TYPE =
"com.example.android.geofence.KEY_TRANSITION_TYPE";
// The prefix for flattened geofence keys
public static final String KEY_PREFIX =
"com.example.android.geofence.KEY";
// Invalid values, used to test geofence storage when retrieving geofences
public static final long INVALID_LONG_VALUE = -999l;
public static final float INVALID_FLOAT_VALUE = -999.0f;
public static final int INVALID_INT_VALUE = -999;
/*
* Constants used in verifying the correctness of input values
*/
public static final double MAX_LATITUDE = 90.d;
public static final double MIN_LATITUDE = -90.d;
public static final double MAX_LONGITUDE = 180.d;
public static final double MIN_LONGITUDE = -180.d;
public static final float MIN_RADIUS = 1f;
/*
* Define a request code to send to Google Play services
* This code is returned in Activity.onActivityResult
*/
public final static int CONNECTION_FAILURE_RESOLUTION_REQUEST = 9000;
// A string of length 0, used to clear out input fields
public static final String EMPTY_STRING = new String();
public static final CharSequence GEOFENCE_ID_DELIMITER = ",";
}