Get Mobile Information (Uidevice, NSBundle, Nslocale)

Source: Internet
Author: User
Tags locale unique id

iOS app development process, sometimes for bug tracking or to obtain the need for feedback to automatically collect user devices, System information, application information, etc., this information to facilitate the developer to diagnose the problem, of course, this information is the user's non-private information, through the development API can be obtained. With those APIs you can get this information, Uidevice,nsbundle,nslocale is available in the iOS SDK.

Uidevice

Uidevice provides a variety of properties, class functions, and status notifications to help us understand the state of the device in all directions. From detecting battery power to locating devices and proximity sensing, Uidevice's job is to provide users and devices with some information about the application. The Uidevice class is also capable of collecting specific details about the device, such as the model and iOS version. Most of these properties have a positive effect on development efforts. The following code simply uses Uidevice to get the phone properties.

Access to equipment-related information

NSString *strname = [[Uidevice currentdevice] name];

NSLog (@ "Device name:%@", strName);//e.g. "My IPhone"

NSString *strid = [[Uidevice currentdevice] uniqueidentifier];

NSLog (@ "Device unique ID:%@", Strid),//uuid,5.0 not available

NSString *strsysname = [[Uidevice currentdevice] systemName];

NSLog (@ "system name:%@", strsysname);//e.g. @ "IOS"

NSString *strsysversion = [[Uidevice currentdevice] systemversion];

NSLog (@ "System version number:%@", strsysversion);//e.g. @ "4.0"

NSString *strmodel = [[Uidevice currentdevice] model];

NSLog (@ "Device mode:%@", strmodel);//e.g. @ "IPhone" @ "IPod touch"

NSString *strlocmodel = [[Uidevice currentdevice] Localizedmodel];

NSLog (@ "Local device mode:%@", strlocmodel);//localized version of model

NSBundle

A bundle is a directory that contains the resources that the program will use. These resources include like, sound, compiled code, NIB files (the user will also refer to bundles as plug-in). The corresponding BUNDLE,COCOA provides class NSBundle. An application looks no different from other files. But it's actually a directory that contains nib files, compiled code, and other resources. We call this directory the program's main bundle. This path allows you to get information about your app, such as the app name, version number, and so on.

Access to app-related information

Nsdictionary *dicinfo = [[NSBundle mainbundle] infodictionary];

Cfshow (Dicinfo);

NSString *strappname = [Dicinfo objectforkey:@ "Cfbundledisplayname"];

NSLog (@ "app app Name:%@", strappname);

NSString *strappversion = [Dicinfo objectforkey:@ "cfbundleshortversionstring"];

NSLog (@ "app version:%@", strappversion);

NSString *strappbuild = [Dicinfo objectforkey:@ "cfbundleversion"];

NSLog (@ "app build version:%@", strappbuild);

Nslocale

Nslocale can obtain the user's localization information settings, such as currency type, country, language, number, format of date format, provide correct geographical location display and so on. The following code gets the machine's current language and country code.

Getting the User ' s Language

Nsarray *languagearray = [Nslocale preferredlanguages];

NSString *language = [Languagearray objectatindex:0];

NSLog (@ "Language:%@", language);//en

Nslocale *locale = [Nslocale Currentlocale];

NSString *country = [locale localeidentifier];

NSLog (@ "Country:%@", country); en_US

Get Mobile Information (Uidevice, NSBundle, Nslocale)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.