App Privacy Details
Apple requires developers to provide information on how their applications collect data as part of their privacy compliance guidelines for apps. These guidelines require that app developers disclose to app users all data collected through use of apps. This includes data collected by third-party SDKs integrated in apps. Digimarc, as a third-party SDK provider, is providing the following summary of data collected by the Digimarc SDK integrated in your app to support your disclosures to your app’s users.
Digimarc will collect this information when our SDK is actively used in an application to recognize content. Interacting with some classes that are not related to detection, like DMSPayload/Payload will not cause this collection. Additionally, use of the DMSResolver/Resolver class to fetch relevant content for a barcode scan will implicitly transmit data to our servers to fulfill the request, and may incur additional data collection.
Please contact Digimarc with any questions regarding data collection in DMSDK.
Data Collected for Analytics and License Compliance
The following data is collected periodically for performance monitoring and analysis.
|What We Collect||Description|
|Installation ID||Unique identifier relative to a given app installed on a given device.|
|Device Manufacturer||Manufacturer of the device using the app, integrating the Digimarc SDK (e.g. Apple).|
|Device Model||Model of the device using the app integrating the Digimarc SDK (e.g. iPhone XS).|
|Application Version||Version of the app integrating the Digimarc SDK (Digimarc Discover 7.4.1)|
|Application ID||Name of the app using the Digimarc SDK (e.g. com.digimarc.mobile.DigimarcDiscover).|
|Operating System||Operating system of the device using the app integrating the Digimarc SDK (e.g. iOS).|
|Operating System Version||Version of the operating system of the device using the app integrating the Digimarc SDK (e.g. iOS 14.1).|
|Developer account name||Customer Account name registered with Digimarc|
|DMSDK Version||Version of the Digimarc SDK installed on the app (e.g. 3.1.3)|
|Developer Resolver Credentials||Developer account username tied to Digimarc’s cloud services.|
Data Collected By The Resolver
Our Resolver cloud service is a database that can take detected Digimarc Barcodes (Audio and Print) and 1D Barcodes, and provide more information based on what was detected. Interacting with the Resolver will implicitly supply Digimarc with the content the user interacted with. This is reflected by “Payload ID”, which contains the code or identifier the user detected.
|What We Collect||Description|
|Payload ID||Payload of Digimarc Barcode or 1D barcode read by the app integrating the Digimarc SDK (e.g. 12345678901234).|
|IP Address||IP address of the device using the app integrating the Digimarc SDK (e.g. 192.168.100.1).|
Interacting with the Resolver cloud service is optional, but can happen in several ways:
- Use of the DMSResolver (Obj-C)/Resolver (Swift) class, specifically the resolve function.
- Use of the DMSDetectorViewController (Obj-C)/DMSDetectorViewController (Swift) class when:
- The detectorViewController:resolvedContent:forPayload (Obj-C)/detectorViewController(_:resolvedContent:for:) (Swift) delegate function has been implemented
- detectorViewController:shouldResolvePayloadsForResult (Obj-C)/detectorViewController(_:shouldResolvePayloadsFor:result:) (Swift) delegate function is either unimplemented or returns true