I develop some codes and pack them into several shared libraries (*.so in Android OS). I would share them to some vendors but I want these libraries can be used only on one or more Android devices. I tried to get the device unique id and check is the id legal or not, but it seems there is no any id that represents a unique device and can not be changed even the device is re-flashed. I know there is a CPUID under x86 windows system, but not similar thing under arm-based Android device. Also, for the sake of linux security mechanism, I can't get anything like MAC for flash id either from user space without root.
Any ways to achieve that ? Look forward to your advice. Thanks.