Device binding is attaching an application instance to a particular mobile device. This method detects a transfer of an application instance to another device. A new install of the application (e.g. in case of buying a new device and transfer the apps) is not detected.
The deviceID detects, whether the device identifier has been changed. It is triggered after reinstallation of the application if there are no other applications from the same vendor installed. The value can also change when installing test builds using Xcode or when installing an app on a device using ad-hoc distribution.
Below are code snippets demonstrating device binding detection across various platforms:
// Android device binding checkoverride fun onDeviceBindingDetected() {TODO("Not yet implemented")}// iOS device binding methodscase deviceChangecase deviceID// Flutter // device binding and device change detectiononDeviceBinding: () =>print("Device binding")// device ID onDeviceID: () =>print("Device ID") // iOS only// Cordova // device binding and device change detectiondeviceBinding: () => {// Place your reaction here}// device ID deviceID: () => { // iOS only// Place your reaction here }// React Native // device binding and device change detectiondeviceBinding: () => {// Place your reaction here}// deviceIDdeviceID: () => { // iOS only// Place your reaction here }// Capacitor // device binding and device change detectiondeviceBinding: () => {// Place your reaction here}// deviceIDdeviceID: () => { // iOS only// Place your reaction here }
Recommended action: Log the event on your BE and react to it if you need to have an instance attached to a particular mobile device (e.g., activation scenarios); otherwise you can ignore it.