Class TriggersService

java.lang.Object
android.content.Context
android.content.ContextWrapper
android.app.Service
android.app.IntentService
com.arubanetworks.meridian.triggers.TriggersService
All Implemented Interfaces:
android.content.ComponentCallbacks, android.content.ComponentCallbacks2

public class TriggersService extends android.app.IntentService
A background service for listening to Meridian triggers.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
    Internal class used by the triggers jobScheduler.
    static class 
    Subscription that can be used in conjunction with Triggers to be informed when a device is in range of Meridian proximity beacons

    Nested classes/interfaces inherited from class android.content.Context

    android.content.Context.BindServiceFlags
  • Field Summary

    Fields inherited from class android.app.Service

    START_CONTINUATION_MASK, START_FLAG_REDELIVERY, START_FLAG_RETRY, START_NOT_STICKY, START_REDELIVER_INTENT, START_STICKY, START_STICKY_COMPATIBILITY, STOP_FOREGROUND_DETACH, STOP_FOREGROUND_LEGACY, STOP_FOREGROUND_REMOVE

    Fields inherited from class android.content.Context

    ACCESSIBILITY_SERVICE, ACCOUNT_SERVICE, ACTIVITY_SERVICE, ADVANCED_PROTECTION_SERVICE, ALARM_SERVICE, APP_FUNCTION_SERVICE, APP_OPS_SERVICE, APP_SEARCH_SERVICE, APPWIDGET_SERVICE, AUDIO_SERVICE, BATTERY_SERVICE, BIND_ABOVE_CLIENT, BIND_ADJUST_WITH_ACTIVITY, BIND_ALLOW_ACTIVITY_STARTS, BIND_ALLOW_OOM_MANAGEMENT, BIND_AUTO_CREATE, BIND_DEBUG_UNBIND, BIND_EXTERNAL_SERVICE, BIND_EXTERNAL_SERVICE_LONG, BIND_IMPORTANT, BIND_INCLUDE_CAPABILITIES, BIND_NOT_FOREGROUND, BIND_NOT_PERCEPTIBLE, BIND_PACKAGE_ISOLATED_PROCESS, BIND_SHARED_ISOLATED_PROCESS, BIND_WAIVE_PRIORITY, BIOMETRIC_SERVICE, BLOB_STORE_SERVICE, BLUETOOTH_SERVICE, BUGREPORT_SERVICE, CAMERA_SERVICE, CAPTIONING_SERVICE, CARRIER_CONFIG_SERVICE, CLIPBOARD_SERVICE, COMPANION_DEVICE_SERVICE, CONNECTIVITY_DIAGNOSTICS_SERVICE, CONNECTIVITY_SERVICE, CONSUMER_IR_SERVICE, CONTACT_KEYS_SERVICE, CONTEXT_IGNORE_SECURITY, CONTEXT_INCLUDE_CODE, CONTEXT_RESTRICTED, CREDENTIAL_SERVICE, CROSS_PROFILE_APPS_SERVICE, DEVICE_ID_DEFAULT, DEVICE_ID_INVALID, DEVICE_LOCK_SERVICE, DEVICE_POLICY_SERVICE, DISPLAY_HASH_SERVICE, DISPLAY_SERVICE, DOMAIN_VERIFICATION_SERVICE, DOWNLOAD_SERVICE, DROPBOX_SERVICE, EUICC_SERVICE, FILE_INTEGRITY_SERVICE, FINGERPRINT_SERVICE, GAME_SERVICE, GRAMMATICAL_INFLECTION_SERVICE, HARDWARE_PROPERTIES_SERVICE, HEALTHCONNECT_SERVICE, INPUT_METHOD_SERVICE, INPUT_SERVICE, IPSEC_SERVICE, JOB_SCHEDULER_SERVICE, KEYGUARD_SERVICE, KEYSTORE_SERVICE, LAUNCHER_APPS_SERVICE, LAYOUT_INFLATER_SERVICE, LOCALE_SERVICE, LOCATION_SERVICE, MEDIA_COMMUNICATION_SERVICE, MEDIA_METRICS_SERVICE, MEDIA_PROJECTION_SERVICE, MEDIA_QUALITY_SERVICE, MEDIA_ROUTER_SERVICE, MEDIA_SESSION_SERVICE, MIDI_SERVICE, MODE_APPEND, MODE_ENABLE_WRITE_AHEAD_LOGGING, MODE_MULTI_PROCESS, MODE_NO_LOCALIZED_COLLATORS, MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE, NETWORK_STATS_SERVICE, NFC_SERVICE, NOTIFICATION_SERVICE, NSD_SERVICE, OVERLAY_SERVICE, PEOPLE_SERVICE, PERFORMANCE_HINT_SERVICE, PERSISTENT_DATA_BLOCK_SERVICE, POWER_SERVICE, PRINT_SERVICE, PROFILING_SERVICE, RECEIVER_EXPORTED, RECEIVER_NOT_EXPORTED, RECEIVER_VISIBLE_TO_INSTANT_APPS, RESTRICTIONS_SERVICE, ROLE_SERVICE, SATELLITE_SERVICE, SEARCH_SERVICE, SECURITY_STATE_SERVICE, SENSOR_SERVICE, SHORTCUT_SERVICE, STATUS_BAR_SERVICE, STORAGE_SERVICE, STORAGE_STATS_SERVICE, SYSTEM_HEALTH_SERVICE, TELECOM_SERVICE, TELEPHONY_IMS_SERVICE, TELEPHONY_SERVICE, TELEPHONY_SUBSCRIPTION_SERVICE, TETHERING_SERVICE, TEXT_CLASSIFICATION_SERVICE, TEXT_SERVICES_MANAGER_SERVICE, TV_AD_SERVICE, TV_INPUT_SERVICE, TV_INTERACTIVE_APP_SERVICE, UI_MODE_SERVICE, USAGE_STATS_SERVICE, USB_SERVICE, USER_SERVICE, VIBRATOR_MANAGER_SERVICE, VIBRATOR_SERVICE, VIRTUAL_DEVICE_SERVICE, VPN_MANAGEMENT_SERVICE, WALLPAPER_SERVICE, WIFI_AWARE_SERVICE, WIFI_P2P_SERVICE, WIFI_RTT_RANGING_SERVICE, WIFI_SERVICE, WINDOW_SERVICE

    Fields inherited from interface android.content.ComponentCallbacks2

    TRIM_MEMORY_BACKGROUND, TRIM_MEMORY_COMPLETE, TRIM_MEMORY_MODERATE, TRIM_MEMORY_RUNNING_CRITICAL, TRIM_MEMORY_RUNNING_LOW, TRIM_MEMORY_RUNNING_MODERATE, TRIM_MEMORY_UI_HIDDEN
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs the default TriggersService.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected static void
    jobFinished(android.content.Context context, EditorKey appKey)
    Internal function used by the triggers jobScheduler.
    protected void
    onHandleIntent(android.content.Intent intent)
     
    void
    Internal function used by the triggers jobScheduler.
    static void
    resetAllTriggers(android.content.Context context)
    Resets triggers cool downs.
    static void
    startMonitoring(android.content.Context context, EditorKey appKey, ArrayList<TriggersService.TriggerSubscription> subscriptions)
    Starts monitoring for new trigger events, if you intend to handle trigger notifications this method should be called either in an on boot handler or each time your application starts.
    static void
    stopMonitoring(android.content.Context context)
    Stops monitoring for Trigger notifications.
    static void
    subscribe(android.content.Context context, EditorKey appKey, ArrayList<TriggersService.TriggerSubscription> subscriptions)
    Add additional TriggersService.TriggerSubscription to the list of subscriptions being monitored.
    static void
    unsubscribe(android.content.Context context, EditorKey appKey, ArrayList<String> subscriptionNames)
    Remove subscriptions by name from active monitoring.

    Methods inherited from class android.app.IntentService

    onBind, onCreate, onDestroy, onStart, onStartCommand, setIntentRedelivery

    Methods inherited from class android.app.Service

    attachBaseContext, dump, getApplication, getForegroundServiceType, onConfigurationChanged, onLowMemory, onRebind, onTaskRemoved, onTimeout, onTimeout, onTrimMemory, onUnbind, startForeground, startForeground, stopForeground, stopForeground, stopSelf, stopSelf, stopSelfResult

    Methods inherited from class android.content.ContextWrapper

    bindIsolatedService, bindService, bindService, bindService, bindService, bindServiceAsUser, bindServiceAsUser, checkCallingOrSelfPermission, checkCallingOrSelfUriPermission, checkCallingOrSelfUriPermissions, checkCallingPermission, checkCallingUriPermission, checkCallingUriPermissions, checkContentUriPermissionFull, checkPermission, checkSelfPermission, checkUriPermission, checkUriPermission, checkUriPermissions, clearWallpaper, createAttributionContext, createConfigurationContext, createContext, createContextForSplit, createDeviceContext, createDeviceProtectedStorageContext, createDisplayContext, createPackageContext, createWindowContext, createWindowContext, databaseList, deleteDatabase, deleteFile, deleteSharedPreferences, enforceCallingOrSelfPermission, enforceCallingOrSelfUriPermission, enforceCallingPermission, enforceCallingUriPermission, enforcePermission, enforceUriPermission, enforceUriPermission, fileList, getApplicationContext, getApplicationInfo, getAssets, getAttributionSource, getAttributionTag, getBaseContext, getCacheDir, getClassLoader, getCodeCacheDir, getContentResolver, getDatabasePath, getDataDir, getDeviceId, getDir, getDisplay, getExternalCacheDir, getExternalCacheDirs, getExternalFilesDir, getExternalFilesDirs, getExternalMediaDirs, getFilesDir, getFileStreamPath, getMainExecutor, getMainLooper, getNoBackupFilesDir, getObbDir, getObbDirs, getOpPackageName, getPackageCodePath, getPackageManager, getPackageName, getPackageResourcePath, getParams, getResources, getSharedPreferences, getSystemService, getSystemServiceName, getTheme, getWallpaper, getWallpaperDesiredMinimumHeight, getWallpaperDesiredMinimumWidth, grantUriPermission, isDeviceProtectedStorage, isRestricted, isUiContext, moveDatabaseFrom, moveSharedPreferencesFrom, openFileInput, openFileOutput, openOrCreateDatabase, openOrCreateDatabase, peekWallpaper, registerComponentCallbacks, registerDeviceIdChangeListener, registerReceiver, registerReceiver, registerReceiver, registerReceiver, removeStickyBroadcast, removeStickyBroadcastAsUser, revokeSelfPermissionsOnKill, revokeUriPermission, revokeUriPermission, sendBroadcast, sendBroadcast, sendBroadcast, sendBroadcastAsUser, sendBroadcastAsUser, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcast, sendOrderedBroadcastAsUser, sendStickyBroadcast, sendStickyBroadcast, sendStickyBroadcastAsUser, sendStickyOrderedBroadcast, sendStickyOrderedBroadcastAsUser, setTheme, setWallpaper, setWallpaper, startActivities, startActivities, startActivity, startActivity, startForegroundService, startInstrumentation, startIntentSender, startIntentSender, startService, stopService, unbindService, unregisterComponentCallbacks, unregisterDeviceIdChangeListener, unregisterReceiver, updateServiceGroup

    Methods inherited from class android.content.Context

    bindIsolatedService, getColor, getColorStateList, getDrawable, getString, getString, getSystemService, getText, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, obtainStyledAttributes, revokeSelfPermissionOnKill, sendBroadcastWithMultiplePermissions

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TriggersService

      public TriggersService()
      Constructs the default TriggersService.
  • Method Details

    • startMonitoring

      public static void startMonitoring(@NonNull android.content.Context context, @NonNull EditorKey appKey, ArrayList<TriggersService.TriggerSubscription> subscriptions)
      Starts monitoring for new trigger events, if you intend to handle trigger notifications this method should be called either in an on boot handler or each time your application starts.

      The trigger response is in your local TriggersBroadcastReceiver that is registered in the manifest.

      Parameters:
      context -
      • the context to use, preferably the application context
      appKey -
      • the application key for your application
      subscriptions -
      • the subscriptions listing the proximity beacons to listened for
    • stopMonitoring

      public static void stopMonitoring(@NonNull android.content.Context context)
      Stops monitoring for Trigger notifications.
    • resetAllTriggers

      public static void resetAllTriggers(@NonNull android.content.Context context)
      Resets triggers cool downs.

      Note that it takes about 20 seconds for the reset to occur.

    • subscribe

      public static void subscribe(@NonNull android.content.Context context, @NonNull EditorKey appKey, ArrayList<TriggersService.TriggerSubscription> subscriptions)
      Add additional TriggersService.TriggerSubscription to the list of subscriptions being monitored.

      Note that it takes up to 20 seconds for new subscription to start If triggers has not been been started, this will call startMonitoring

      Parameters:
      context -
      • the context to use, preferably the application context
      appKey -
      • the application key for your application
      subscriptions -
      • additions subscriptions to listened for
    • unsubscribe

      public static void unsubscribe(@NonNull android.content.Context context, @NonNull EditorKey appKey, ArrayList<String> subscriptionNames)
      Remove subscriptions by name from active monitoring.

      Note that it takes up to 20 seconds for subscriptions to be removed.

      Parameters:
      context -
      • the context to use, preferably the application context
      appKey -
      • the application key for your application
      subscriptionNames -
      • subscriptions to be removed
    • onHandleIntent

      protected void onHandleIntent(android.content.Intent intent)
      Specified by:
      onHandleIntent in class android.app.IntentService
    • onRegisterTriggersJobAgainEvent

      public void onRegisterTriggersJobAgainEvent(TriggersService.RegisterTriggersJobAgainEvent event)
      Internal function used by the triggers jobScheduler.

      For internal use only

    • jobFinished

      protected static void jobFinished(@NonNull android.content.Context context, @NonNull EditorKey appKey)
      Internal function used by the triggers jobScheduler.

      For internal use only