As you may have noticed, the last Pushlink.start parameter is "yourDeviceId".
PushLink.start(this, R.mipmap.ic_launcher, "yourApiKey", "yourDeviceID");
It's up to you to identify the device.
There is not a default and 100% guaranteed way to retrieve the Device ID on Android. It depends on OS version, device brand, etc. That's why Pushlink externalizes the id generation.
However, Pushlink is designed for enterprise apps, and the developer has a certain control over which types of Devices and OS the application is going to run. Don't use an ID that is changed after every uninstall/install. Try to use a long live ID. Think and create your own strategy.
Be careful with not certified ROMs.
Fake IMEI like '004999010640000'.
Fake Settings.Secure.ANDROID_ID like '9774d56d682e549c'.
Be careful with Android releases. They use to change permissions and behaviors related to devices identifiers.
Don't do that. You will not be able to manage your installations properly. This will create all sorts of problems.
One real-life installation will be registered many times giving you an unreal number of managed devices.