On account of its open-source nature, the Android operating system needs to have some safeguards in place to ensure a uniform experience across the thousands of devices that run it. That is the primary why manufacturers have to adhere to certain guidelines set by Google so that their devices can run Google Apps (or GApps) properly. However, several manufacturers didn’t comply and used workarounds. Now, Google has made it so that devices with build dates later than the 16th of March will not run GApps at all.
Naturally, the custom ROM community was aghast at the news, as it would mean that any build released after March 16th wouldn’t work. To address their woes, Google allowed custom ROMs to run GApps, but one had to go through a confusing registration page first. Initially, it seemed like the webpage wasn’t working at all, and then it worked with IMEI numbers. Shortly after, it was found that it accepted the Google Play Service Framework Device ID (but only in decimal format). Later, the webpage accepted GSF IDs in their original hexadecimal format. The Google Play Service Framework Device ID is a unique device identifier that is generated by Google Play Services, which can be retrieved by the following ADB command.
Related [UPDATE: needs IMEI number]Google Blocking Uncertified Devices From Using GApps but Custom ROMs Are Allowed to Be Whitelisted
$ adb root
$ adb shell ‘sqlite3 /data/data/com.google.android.gsf/databases/gservices.db “select * from main where name = ”android_id”;”‘
However, the registration page stated that a user could register up to a hundred GSF IDs per Google account. Wiping your device generates a new GSF ID every time, which is a problem for developers, as they do it multiple times, to test new ROMs. To make matters worse, there was no way to remove active device registrations, so users would have to ration their GSF IDs if they didn’t want to fill up the list accidentally.
Thankfully, the official uncertified device page has dropped the 100 device registration limit so you don’t have to worry about running out of tokens. One can register and re-register as many times as they please a Google account. This is a win-win for both Google and developers, as it prevents device makers from bypassing Google’s CTS and pre-installing Google apps and services when they aren’t supposed to, and developers can continue work on their ROMs without worrying about running out of tokens.
Source: XDA developers