I am developing an app for which its really important that it does not give access to app functions if app is installed on a Virtual Device e.g Genymotion, Bluestacks and other similar emulators

I have tried using few identifiers such as Device ID, Sensors, Fingerprint etc. But all of these fail with these emulators when clubbed with Bluestacks tweaker eg. BS Tweak etc that assigns Physical Device level values to these identifiers even on the emulator.

So, any help on getting this issue sorted out will be greatly appreciated..