Generate a "serial number" for Android, pass it via modified /proc/cmdline
authorBryan Stine <stinebd@xdandroid.com>
Mon, 19 Jul 2010 18:57:31 +0000 (14:57 -0400)
committerBryan Stine <stinebd@xdandroid.com>
Mon, 19 Jul 2010 18:57:31 +0000 (14:57 -0400)
commitdd8380b33037fd3e6c96e62503913e3eb34e2513
tree4000f0f9a95d276c1267b2c042f148bbca6199a5
parentdca2ed0414ea9f687808de2520284a6daebc1f08
Generate a "serial number" for Android, pass it via modified /proc/cmdline

Android expects a serial number to be passed to init via the kernel command
line. Android generates a unique system identifier, ANDROID_ID, based on the
machine's serial number. Without one, ANDROID_ID is always the same. Certain
market apps rely on a unique ANDROID_ID (outside of emulator) for accounting
purposes.

To provide such an ID, we now generate a random, fake serial number and store
it in /data. This will ensure it survives reboots. We then modify the kernel
command line by copying it to /tmp, editing it, and bind-mounting over the
original in /proc.
init