A service which allows an installed application to expose sensors to Google Fit, so that
they can be used by other applications through the standard SensorsClient
.
The service supports finding, registering, and unregistering to application-exposed
sensors.
Applications should implement the FitnessSensorService when they have access to live sensor data from external devices that are not otherwise compatible with the platform. An example would be a hardware pedometer that connects to the phone via standard Bluetooth. A companion application could expose the pedometer's readings to the platform.
The FitnessSensorService can also be used to expose software sensors. For instance, an application may compute step count data in software based on other hardware sensors (such as the accelerometer). The computed data can be made available using this service.
To add an application-exposed sensor to the platform, a subclass of FitnessSensorService
must be declared in the manifest as such:
<service android:name="com.example.android.fitness.MySensorService" android:exported="true"> <intent-filter> <action android:name="com.google.android.gms.fitness.service.FitnessSensorService" /> <data android:mimeType="vnd.google.fitness.data_type/com.google.heart_rate.bpm" /> </intent-filter> </service>
The declared service must include one or more mimeType filters, indicating which data types it supports. If no data type is listed, the service will be ignored.
The service will be used to find, register, and unregister to the application-exposed sensors. When an active registration exists, Google Fit will bind to the service, and will remain bound until all registrations are removed. In this way, the platform is able to control the lifetime of the sensor service.
The Fitness Platform has built-in support for local hardware sensors, BLE devices with standard GATT profiles, and Android Wear devices. Accessing these sensors does not require a custom FitnessSensorService.
Constant Summary
String | SERVICE_INTERFACE | Intent action that must be declared in the manifest for the subclass. |
Inherited Constant Summary
int | START_CONTINUATION_MASK | |
int | START_FLAG_REDELIVERY | |
int | START_FLAG_RETRY | |
int | START_NOT_STICKY | |
int | START_REDELIVER_INTENT | |
int | START_STICKY | |
int | START_STICKY_COMPATIBILITY | |
int | STOP_FOREGROUND_DETACH | |
int | STOP_FOREGROUND_LEGACY | |
int | STOP_FOREGROUND_REMOVE |
String | ACCESSIBILITY_SERVICE | |
String | ACCOUNT_SERVICE | |
String | ACTIVITY_SERVICE | |
String | ALARM_SERVICE | |
String | APPWIDGET_SERVICE | |
String | APP_OPS_SERVICE | |
String | APP_SEARCH_SERVICE | |
String | AUDIO_SERVICE | |
String | BATTERY_SERVICE | |
int | BIND_ABOVE_CLIENT | |
int | BIND_ADJUST_WITH_ACTIVITY | |
int | BIND_ALLOW_ACTIVITY_STARTS | |
int | BIND_ALLOW_OOM_MANAGEMENT | |
int | BIND_AUTO_CREATE | |
int | BIND_DEBUG_UNBIND | |
int | BIND_EXTERNAL_SERVICE | |
long | BIND_EXTERNAL_SERVICE_LONG | |
int | BIND_IMPORTANT | |
int | BIND_INCLUDE_CAPABILITIES | |
int | BIND_NOT_FOREGROUND | |
int | BIND_NOT_PERCEPTIBLE | |
int | BIND_PACKAGE_ISOLATED_PROCESS | |
int | BIND_SHARED_ISOLATED_PROCESS | |
int | BIND_WAIVE_PRIORITY | |
String | BIOMETRIC_SERVICE | |
String | BLOB_STORE_SERVICE | |
String | BLUETOOTH_SERVICE | |
String | BUGREPORT_SERVICE | |
String | CAMERA_SERVICE | |
String | CAPTIONING_SERVICE | |
String | CARRIER_CONFIG_SERVICE | |
String | CLIPBOARD_SERVICE | |
String | COMPANION_DEVICE_SERVICE | |
String | CONNECTIVITY_DIAGNOSTICS_SERVICE | |
String | CONNECTIVITY_SERVICE | |
String | CONSUMER_IR_SERVICE | |
String | CONTACT_KEYS_SERVICE | |
int | CONTEXT_IGNORE_SECURITY | |
int | CONTEXT_INCLUDE_CODE | |
int | CONTEXT_RESTRICTED | |
String | CREDENTIAL_SERVICE | |
String | CROSS_PROFILE_APPS_SERVICE | |
int | DEVICE_ID_DEFAULT | |
int | DEVICE_ID_INVALID | |
String | DEVICE_LOCK_SERVICE | |
String | DEVICE_POLICY_SERVICE | |
String | DISPLAY_HASH_SERVICE | |
String | DISPLAY_SERVICE | |
String | DOMAIN_VERIFICATION_SERVICE | |
String | DOWNLOAD_SERVICE | |
String | DROPBOX_SERVICE | |
String | EUICC_SERVICE | |
String | FILE_INTEGRITY_SERVICE | |
String | FINGERPRINT_SERVICE | |
String | GAME_SERVICE | |
String | GRAMMATICAL_INFLECTION_SERVICE | |
String | HARDWARE_PROPERTIES_SERVICE | |
String | HEALTHCONNECT_SERVICE | |
String | INPUT_METHOD_SERVICE | |
String | INPUT_SERVICE | |
String | IPSEC_SERVICE | |
String | JOB_SCHEDULER_SERVICE | |
String | KEYGUARD_SERVICE | |
String | LAUNCHER_APPS_SERVICE | |
String | LAYOUT_INFLATER_SERVICE | |
String | LOCALE_SERVICE | |
String | LOCATION_SERVICE | |
String | MEDIA_COMMUNICATION_SERVICE | |
String | MEDIA_METRICS_SERVICE | |
String | MEDIA_PROJECTION_SERVICE | |
String | MEDIA_ROUTER_SERVICE | |
String | MEDIA_SESSION_SERVICE | |
String | MIDI_SERVICE | |
int | MODE_APPEND | |
int | MODE_ENABLE_WRITE_AHEAD_LOGGING | |
int | MODE_MULTI_PROCESS | |
int | MODE_NO_LOCALIZED_COLLATORS | |
int | MODE_PRIVATE | |
int | MODE_WORLD_READABLE | |
int | MODE_WORLD_WRITEABLE | |
String | NETWORK_STATS_SERVICE | |
String | NFC_SERVICE | |
String | NOTIFICATION_SERVICE | |
String | NSD_SERVICE | |
String | OVERLAY_SERVICE | |
String | PEOPLE_SERVICE | |
String | PERFORMANCE_HINT_SERVICE | |
String | PERSISTENT_DATA_BLOCK_SERVICE | |
String | POWER_SERVICE | |
String | PRINT_SERVICE | |
String | PROFILING_SERVICE | |
int | RECEIVER_EXPORTED | |
int | RECEIVER_NOT_EXPORTED | |
int | RECEIVER_VISIBLE_TO_INSTANT_APPS | |
String | RESTRICTIONS_SERVICE | |
String | ROLE_SERVICE | |
String | SEARCH_SERVICE | |
String | SECURITY_STATE_SERVICE | |
String | SENSOR_SERVICE | |
String | SHORTCUT_SERVICE | |
String | STATUS_BAR_SERVICE | |
String | STORAGE_SERVICE | |
String | STORAGE_STATS_SERVICE | |
String | SYSTEM_HEALTH_SERVICE | |
String | TELECOM_SERVICE | |
String | TELEPHONY_IMS_SERVICE | |
String | TELEPHONY_SERVICE | |
String | TELEPHONY_SUBSCRIPTION_SERVICE | |
String | TEXT_CLASSIFICATION_SERVICE | |
String | TEXT_SERVICES_MANAGER_SERVICE | |
String | TV_INPUT_SERVICE | |
String | TV_INTERACTIVE_APP_SERVICE | |
String | UI_MODE_SERVICE | |
String | USAGE_STATS_SERVICE | |
String | USB_SERVICE | |
String | USER_SERVICE | |
String | VIBRATOR_MANAGER_SERVICE | |
String | VIBRATOR_SERVICE | |
String | VIRTUAL_DEVICE_SERVICE | |
String | VPN_MANAGEMENT_SERVICE | |
String | WALLPAPER_SERVICE | |
String | WIFI_AWARE_SERVICE | |
String | WIFI_P2P_SERVICE | |
String | WIFI_RTT_RANGING_SERVICE | |
String | WIFI_SERVICE | |
String | WINDOW_SERVICE |
int | TRIM_MEMORY_BACKGROUND | |
int | TRIM_MEMORY_COMPLETE | |
int | TRIM_MEMORY_MODERATE | |
int | TRIM_MEMORY_RUNNING_CRITICAL | |
int | TRIM_MEMORY_RUNNING_LOW | |
int | TRIM_MEMORY_RUNNING_MODERATE | |
int | TRIM_MEMORY_UI_HIDDEN |
Public Constructor Summary
Public Method Summary
IBinder | |
void |
onCreate()
|
abstract List<DataSource> |
onFindDataSources(List<DataType>
dataTypes)
Find application data sources which match the given data types.
|
abstract boolean |
onRegister(FitnessSensorServiceRequest
request)
Registers for events from a particular data source at a given rate.
|
abstract boolean |
Inherited Method Summary
void |
attachBaseContext(Context
arg0)
|
void | |
final Application |
getApplication()
|
final int |
getForegroundServiceType()
|
abstract IBinder |
onBind(Intent
arg0)
|
void |
onConfigurationChanged(Configuration
arg0)
|
void |
onCreate()
|
void |
onDestroy()
|
void |
onLowMemory()
|
void |
onRebind(Intent
arg0)
|
void |
onStart(Intent
arg0, int arg1)
|
int |
onStartCommand(Intent
arg0, int arg1, int arg2)
|
void |
onTaskRemoved(Intent
arg0)
|
void |
onTimeout(int arg0, int arg1)
|
void |
onTimeout(int arg0)
|
void |
onTrimMemory(int arg0)
|
boolean |
onUnbind(Intent
arg0)
|
final void |
startForeground(int arg0, Notification
arg1)
|
final void |
startForeground(int arg0, Notification
arg1, int arg2)
|
final void |
stopForeground(int arg0)
|
final void |
stopForeground(boolean arg0)
|
final void |
stopSelf()
|
final void |
stopSelf(int arg0)
|
final boolean |
stopSelfResult(int arg0)
|
void |
attachBaseContext(Context
arg0)
|
boolean | |
boolean | |
boolean | |
boolean | |
boolean | |
boolean | |
boolean |
bindServiceAsUser(Intent
arg0, ServiceConnection
arg1, Context.BindServiceFlags arg2, UserHandle
arg3)
|
int |
checkCallingOrSelfPermission(String arg0)
|
int |
checkCallingOrSelfUriPermission(Uri arg0, int
arg1)
|
int[] | |
int |
checkCallingPermission(String arg0)
|
int |
checkCallingUriPermission(Uri arg0, int
arg1)
|
int[] | |
int |
checkContentUriPermissionFull(Uri arg0, int
arg1, int arg2, int arg3)
|
int |
checkPermission(String arg0,
int arg1, int arg2)
|
int |
checkSelfPermission(String arg0)
|
int | |
int |
checkUriPermission(Uri arg0, int
arg1, int arg2, int arg3)
|
int[] | |
void |
clearWallpaper()
|
Context |
createAttributionContext(String arg0)
|
Context |
createConfigurationContext(Configuration
arg0)
|
Context |
createContext(ContextParams arg0)
|
Context |
createContextForSplit(String arg0)
|
Context |
createDeviceContext(int arg0)
|
Context |
createDeviceProtectedStorageContext()
|
Context |
createDisplayContext(Display
arg0)
|
Context |
createPackageContext(String arg0,
int arg1)
|
Context |
createWindowContext(int arg0, Bundle arg1)
|
Context | |
String[] |
databaseList()
|
boolean |
deleteDatabase(String arg0)
|
boolean |
deleteFile(String arg0)
|
boolean |
deleteSharedPreferences(String arg0)
|
void | |
void | |
void | |
void | |
void | |
void | |
void | |
String[] |
fileList()
|
Context |
getApplicationContext()
|
ApplicationInfo |
getApplicationInfo()
|
AssetManager |
getAssets()
|
AttributionSource |
getAttributionSource()
|
String |
getAttributionTag()
|
Context |
getBaseContext()
|
File |
getCacheDir()
|
ClassLoader |
getClassLoader()
|
File |
getCodeCacheDir()
|
ContentResolver |
getContentResolver()
|
File |
getDataDir()
|
File |
getDatabasePath(String arg0)
|
int |
getDeviceId()
|
File |
getDir(String arg0,
int arg1)
|
Display |
getDisplay()
|
File |
getExternalCacheDir()
|
File[] |
getExternalCacheDirs()
|
File |
getExternalFilesDir(String arg0)
|
File[] |
getExternalFilesDirs(String arg0)
|
File[] |
getExternalMediaDirs()
|
File |
getFileStreamPath(String arg0)
|
File |
getFilesDir()
|
Executor |
getMainExecutor()
|
Looper |
getMainLooper()
|
File |
getNoBackupFilesDir()
|
File |
getObbDir()
|
File[] |
getObbDirs()
|
String |
getOpPackageName()
|
String |
getPackageCodePath()
|
PackageManager |
getPackageManager()
|
String |
getPackageName()
|
String |
getPackageResourcePath()
|
ContextParams |
getParams()
|
Resources |
getResources()
|
SharedPreferences |
getSharedPreferences(String arg0,
int arg1)
|
Object |
getSystemService(String arg0)
|
String |
getSystemServiceName(Class<?>
arg0)
|
Resources.Theme |
getTheme()
|
Drawable |
getWallpaper()
|
int |
getWallpaperDesiredMinimumHeight()
|
int |
getWallpaperDesiredMinimumWidth()
|
void | |
boolean |
isDeviceProtectedStorage()
|
boolean |
isRestricted()
|
boolean |
isUiContext()
|
boolean | |
boolean | |
FileInputStream |
openFileInput(String arg0)
|
FileOutputStream |
openFileOutput(String arg0,
int arg1)
|
SQLiteDatabase |
openOrCreateDatabase(String arg0,
int arg1,
SQLiteDatabase.CursorFactory arg2,
DatabaseErrorHandler arg3)
|
SQLiteDatabase | |
Drawable |
peekWallpaper()
|
void |
registerComponentCallbacks(ComponentCallbacks
arg0)
|
void | |
Intent | |
Intent | |
Intent | |
Intent | |
void |
removeStickyBroadcast(Intent
arg0)
|
void | |
void | |
void |
revokeUriPermission(Uri arg0, int
arg1)
|
void | |
void | |
void | |
void |
sendBroadcast(Intent
arg0)
|
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void | |
void |
sendOrderedBroadcastAsUser(Intent
arg0, UserHandle
arg1, String arg2,
BroadcastReceiver
arg3, Handler
arg4, int arg5, String arg6,
Bundle arg7)
|
void |
sendStickyBroadcast(Intent
arg0)
|
void | |
void | |
void |
sendStickyOrderedBroadcast(Intent
arg0, BroadcastReceiver
arg1, Handler
arg2, int arg3, String arg4,
Bundle arg5)
|
void |
sendStickyOrderedBroadcastAsUser(Intent
arg0, UserHandle
arg1, BroadcastReceiver
arg2, Handler
arg3, int arg4, String arg5,
Bundle arg6)
|
void |
setTheme(int arg0)
|
void |
setWallpaper(Bitmap
arg0)
|
void |
setWallpaper(InputStream
arg0)
|
void | |
void |
startActivities(Intent[]
arg0)
|
void |
startActivity(Intent
arg0)
|
void | |
ComponentName |
startForegroundService(Intent
arg0)
|
boolean | |
void | |
void | |
ComponentName |
startService(Intent
arg0)
|
boolean |
stopService(Intent
arg0)
|
void |
unbindService(ServiceConnection
arg0)
|
void |
unregisterComponentCallbacks(ComponentCallbacks
arg0)
|
void |
unregisterDeviceIdChangeListener(IntConsumer
arg0)
|
void |
unregisterReceiver(BroadcastReceiver
arg0)
|
void |
updateServiceGroup(ServiceConnection
arg0, int arg1, int arg2)
|
boolean | |
boolean |
bindIsolatedService(Intent
arg0, Context.BindServiceFlags arg1, String arg2,
Executor
arg3, ServiceConnection
arg4)
|
boolean | |
boolean | |
abstract boolean | |
boolean | |
boolean | |
boolean |
bindServiceAsUser(Intent
arg0, ServiceConnection
arg1, Context.BindServiceFlags arg2, UserHandle
arg3)
|
abstract int |
checkCallingOrSelfPermission(String arg0)
|
abstract int |
checkCallingOrSelfUriPermission(Uri arg0, int
arg1)
|
int[] | |
abstract int |
checkCallingPermission(String arg0)
|
abstract int |
checkCallingUriPermission(Uri arg0, int
arg1)
|
int[] | |
int |
checkContentUriPermissionFull(Uri arg0, int
arg1, int arg2, int arg3)
|
abstract int |
checkPermission(String arg0,
int arg1, int arg2)
|
abstract int |
checkSelfPermission(String arg0)
|
abstract int | |
abstract int |
checkUriPermission(Uri arg0, int
arg1, int arg2, int arg3)
|
int[] | |
abstract void |
clearWallpaper()
|
Context |
createAttributionContext(String arg0)
|
abstract Context |
createConfigurationContext(Configuration
arg0)
|
Context |
createContext(ContextParams arg0)
|
abstract Context |
createContextForSplit(String arg0)
|
Context |
createDeviceContext(int arg0)
|
abstract Context |
createDeviceProtectedStorageContext()
|
abstract Context |
createDisplayContext(Display
arg0)
|
abstract Context |
createPackageContext(String arg0,
int arg1)
|
Context |
createWindowContext(int arg0, Bundle arg1)
|
Context | |
abstract String[] |
databaseList()
|
abstract boolean |
deleteDatabase(String arg0)
|
abstract boolean |
deleteFile(String arg0)
|
abstract boolean |
deleteSharedPreferences(String arg0)
|
abstract void | |
abstract void | |
abstract void | |
abstract void | |
abstract void | |
abstract void | |
abstract void | |
abstract String[] |
fileList()
|
abstract Context |
getApplicationContext()
|
abstract ApplicationInfo |
getApplicationInfo()
|
abstract AssetManager |
getAssets()
|
AttributionSource |
getAttributionSource()
|
String |
getAttributionTag()
|
abstract File |
getCacheDir()
|
abstract ClassLoader |
getClassLoader()
|
abstract File |
getCodeCacheDir()
|
final int |
getColor(int arg0)
|
final ColorStateList |
getColorStateList(int arg0)
|
abstract ContentResolver |
getContentResolver()
|
abstract File |
getDataDir()
|
abstract File |
getDatabasePath(String arg0)
|
int |
getDeviceId()
|
abstract File |
getDir(String arg0,
int arg1)
|
Display |
getDisplay()
|
final Drawable |
getDrawable(int arg0)
|
abstract File |
getExternalCacheDir()
|
abstract File[] |
getExternalCacheDirs()
|
abstract File |
getExternalFilesDir(String arg0)
|
abstract File[] |
getExternalFilesDirs(String arg0)
|
abstract File[] |
getExternalMediaDirs()
|
abstract File |
getFileStreamPath(String arg0)
|
abstract File |
getFilesDir()
|
Executor |
getMainExecutor()
|
abstract Looper |
getMainLooper()
|
abstract File |
getNoBackupFilesDir()
|
abstract File |
getObbDir()
|
abstract File[] |
getObbDirs()
|
String |
getOpPackageName()
|
abstract String |
getPackageCodePath()
|
abstract PackageManager |
getPackageManager()
|
abstract String |
getPackageName()
|
abstract String |
getPackageResourcePath()
|
ContextParams |
getParams()
|
abstract Resources |
getResources()
|
abstract SharedPreferences |
getSharedPreferences(String arg0,
int arg1)
|
final String |
getString(int arg0, Object...
arg1)
|
final String |
getString(int arg0)
|
final <T> T |
getSystemService(Class<T>
arg0)
|
abstract Object |
getSystemService(String arg0)
|
abstract String |
getSystemServiceName(Class<?>
arg0)
|
final CharSequence |
getText(int arg0)
|
abstract Resources.Theme |
getTheme()
|
abstract Drawable |
getWallpaper()
|
abstract int |
getWallpaperDesiredMinimumHeight()
|
abstract int |
getWallpaperDesiredMinimumWidth()
|
abstract void | |
abstract boolean |
isDeviceProtectedStorage()
|
boolean |
isRestricted()
|
boolean |
isUiContext()
|
abstract boolean | |
abstract boolean | |
final TypedArray |
obtainStyledAttributes(AttributeSet
arg0, int[] arg1)
|
final TypedArray |
obtainStyledAttributes(AttributeSet
arg0, int[] arg1, int arg2, int arg3)
|
final TypedArray |
obtainStyledAttributes(int arg0, int[] arg1)
|
final TypedArray |
obtainStyledAttributes(int[] arg0)
|
abstract FileInputStream |
openFileInput(String arg0)
|
abstract FileOutputStream |
openFileOutput(String arg0,
int arg1)
|
abstract SQLiteDatabase |
openOrCreateDatabase(String arg0,
int arg1,
SQLiteDatabase.CursorFactory arg2,
DatabaseErrorHandler arg3)
|
abstract SQLiteDatabase | |
abstract Drawable |
peekWallpaper()
|
void |
registerComponentCallbacks(ComponentCallbacks
arg0)
|
void | |
abstract Intent | |
abstract Intent | |
abstract Intent | |
abstract Intent | |
abstract void |
removeStickyBroadcast(Intent
arg0)
|
abstract void | |
void |
revokeSelfPermissionOnKill(String arg0)
|
void | |
abstract void |
revokeUriPermission(Uri arg0, int
arg1)
|
abstract void | |
void | |
abstract void | |
abstract void |
sendBroadcast(Intent
arg0)
|
abstract void | |
abstract void | |
void | |
void | |
abstract void | |
void | |
void | |
abstract void | |
abstract void |
sendOrderedBroadcastAsUser(Intent
arg0, UserHandle
arg1, String arg2,
BroadcastReceiver
arg3, Handler
arg4, int arg5, String arg6,
Bundle arg7)
|
abstract void |
sendStickyBroadcast(Intent
arg0)
|
void | |
abstract void | |
abstract void |
sendStickyOrderedBroadcast(Intent
arg0, BroadcastReceiver
arg1, Handler
arg2, int arg3, String arg4,
Bundle arg5)
|
abstract void |
sendStickyOrderedBroadcastAsUser(Intent
arg0, UserHandle
arg1, BroadcastReceiver
arg2, Handler
arg3, int arg4, String arg5,
Bundle arg6)
|
abstract void |
setTheme(int arg0)
|
abstract void |
setWallpaper(Bitmap
arg0)
|
abstract void |
setWallpaper(InputStream
arg0)
|
abstract void | |
abstract void |
startActivities(Intent[]
arg0)
|
abstract void |
startActivity(Intent
arg0)
|
abstract void | |
abstract ComponentName |
startForegroundService(Intent
arg0)
|
abstract boolean | |
abstract void | |
abstract void | |
abstract ComponentName |
startService(Intent
arg0)
|
abstract boolean |
stopService(Intent
arg0)
|
abstract void |
unbindService(ServiceConnection
arg0)
|
void |
unregisterComponentCallbacks(ComponentCallbacks
arg0)
|
void |
unregisterDeviceIdChangeListener(IntConsumer
arg0)
|
abstract void |
unregisterReceiver(BroadcastReceiver
arg0)
|
void |
updateServiceGroup(ServiceConnection
arg0, int arg1, int arg2)
|
abstract void |
onTrimMemory(int arg0)
|
abstract void |
onConfigurationChanged(Configuration
arg0)
|
abstract void |
onLowMemory()
|
Constants
public static final String SERVICE_INTERFACE
Intent action that must be declared in the manifest for the subclass. Used to start the service to find and register to application-exposed sensors.
Public Constructors
public FitnessSensorService ()
Public Methods
public void onCreate ()
public abstract List<DataSource> onFindDataSources (List<DataType> dataTypes)
Find application data sources which match the given data types.
Parameters
dataTypes | The data types that the client is interested in. |
---|
Returns
- The list of data sources which this application can expose that match the given data types, empty if there is no match
public abstract boolean onRegister (FitnessSensorServiceRequest request)
Registers for events from a particular data source at a given rate. Events should be
delivered to the fitness platform using the dispatcher specified in the request,
accessible via
FitnessSensorServiceRequest.getDispatcher()
.
In case an active registration to the given data source already exists, the request
should be treated as an update. In case the given data source is no longer exposed by
this application, the request can be ignored and false
returned.
Parameters
request | Request specifying the data source to register to, the desired sampling rate, and the desired batching interval |
---|
Returns
- Whether we were able to register to a matching data source.
public abstract boolean onUnregister (DataSource dataSource)
Unregisters for events from a particular data source.
Parameters
dataSource | The data source we wish to stop receiving events from. |
---|
Returns
- Whether we were able to unregister from a matching data source.