Suppose I want to create an application whose sole purpose is to fingerprint a device and share it with me via some kind of a server request. Meaning, it gets me a fingerprint the first time a user opens said app, and even after a user completely uninstalls the app and re-installs it back some time later, it would still give me exactly the same fingerprint. The application itself is supposed to be generic, i.e. not containing any specific unique code for every user.
Is it possible and what are my options? One possible approach that I see is using the web view to fingerprint the browser, are there any other options and is it possible for a user to defeat them all in Graphene OS?
Just wanted to note here that I'm not talking about human hand fingerprints, but about device fingerprints.