Comment obtenez-vous par programme le numéro de série d'un iPhone?
Je veux savoir le numéro de série de mon iPhone à l'aide de mon application. J'ai écrit le code ci-dessous.
- (NSString*)getSerialNumber
{
CFTypeRef serialNumberAsCFString;
io_service_t platformExpert = IOServiceGetMatchingService(kIOMasterPortDefault, IOServiceMatching("IOPlatformExpertDevice"));
if (platformExpert)
{
serialNumberAsCFString = IORegistryEntryCreateCFProperty(platformExpert, CFSTR(kIOPlatformUUIDKey), kCFAllocatorDefault, 0);
}
IOObjectRelease(platformExpert);
NSString *serial = [[NSString alloc] initWithFormat:@"%@",serialNumberAsCFString];
NSLog(@"serail no==>%@",serialNumberAsCFString);
NSLog(@"serail no==>%@",serial);
}
Pourquoi suis-je encore en train de faux numéro de série?
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Vous devez changer l'argument 2 de
IORegistryEntryCreateCFProperty
deCFSTR (kIOPlatformUUIDKey)
àCFSTR (kIOPlatformSerialNumberKey)
. Ensuite, vous recevrez le numéro de série correct(avec une longueur de 11 caractères).Êtes-vous reliant la IOKit cadre?
Essayer le
fonction, disponible à
http://blogs.oreilly.com/iphone/2008/08/retrieving-device-information.html
Vous pouvez également utiliser le UIDevice classe de récupérer d'autres informations utiles
Par exemple, vous pouvez faire:
D'autres propriétés utiles sont les suivantes:
Prêt à l'usage de la catégorie sur UIDevice: UIDevice+serialNumber. Pas sûr que ce serait acceptée sur l'App Store.