55 lines
1006 B
Python
55 lines
1006 B
Python
'''UniqueID facade.
|
|
|
|
Returns the following depending on the platform:
|
|
|
|
* **Android**: Android ID
|
|
* **OS X**: Serial number of the device
|
|
* **Linux**: Serial number using lshw
|
|
* **Windows**: MachineGUID from regkey
|
|
* **iOS**: UUID
|
|
|
|
Simple Example
|
|
--------------
|
|
|
|
To get the unique ID::
|
|
|
|
>>> from plyer import uniqueid
|
|
>>> uniqueid.id
|
|
'1b1a7a4958e2a845'
|
|
|
|
.. versionadded:: 1.2.0
|
|
|
|
.. versionchanged:: 1.2.4
|
|
On Android returns Android ID instead of IMEI.
|
|
|
|
Supported Platforms
|
|
-------------------
|
|
Android, iOS, Windows, OS X, Linux
|
|
|
|
'''
|
|
|
|
|
|
class UniqueID:
|
|
'''
|
|
UniqueID facade.
|
|
'''
|
|
|
|
@property
|
|
def id(self):
|
|
'''
|
|
Property that returns the unique id of the platform.
|
|
'''
|
|
return self.get_uid()
|
|
|
|
def get_uid(self):
|
|
'''
|
|
Public method for receiving unique ID via platform-specific
|
|
API in plyer.platforms.
|
|
'''
|
|
return self._get_uid()
|
|
|
|
# private
|
|
|
|
def _get_uid(self):
|
|
raise NotImplementedError()
|