En Android y Blackberry , las aplicaciones pueden acceder al IMEI sin ningún privilegio especial. En iOS , no hay una API documentada, y puede o no obtener lejos de usar APIs no documentadas.
El IMEI no es una forma muy buena de identificar un teléfono. Algunos lugares exóticos como América del Norte tienen teléfonos CDMA sin IMEI. Todas las plataformas principales tienen una forma de informar un identificador supuestamente único que no cambia durante la vida útil del teléfono ( Android , iPhone ), pero no siempre son confiable . Nunca se puede saber si la ID notificada es genuina (a menos que haga suposiciones adicionales, como el uso de su aplicación en un teléfono sin jailbreak), por lo que no es un método de autenticación.
A menos que necesite un identificador de dispositivo que sobreviva a la desinstalación y reinstalación de su aplicación, genere un certificado de cliente en el momento del aprovisionamiento. Necesitará algo así para la autenticación de todos modos, así que también puede usarlo para identificar el dispositivo.
Si desea que la capacidad de instalar su aplicación esté vinculada a un hardware en particular, la mayoría de los teléfonos inteligentes de hoy no ofrecen esto. En cualquier teléfono rootable, los usuarios pueden hacer una copia de seguridad de sus aplicaciones instaladas y restaurarlas en otro dispositivo.