UIDevice
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 2.0 и позже.
UIDevice
класс обеспечивает одноэлементный экземпляр, представляющий текущее устройство. От этого экземпляра можно получить информацию об устройстве, таком как присвоенное имя, модель устройства, и имя операционной системы и версия.
Вы также используете UIDevice
экземпляр для обнаружения изменений в характеристиках устройства, таких как физическая ориентация. Вы получаете текущую ориентацию с помощью orientation
свойство или получает уведомления изменения путем регистрации для UIDeviceOrientationDidChangeNotification
уведомление. Перед использованием любого из этих методов для получения данных ориентации необходимо включить поставку данных с помощью beginGeneratingDeviceOrientationNotifications
метод. Когда Вы больше не должны будете отслеживать ориентацию устройства, вызовите endGeneratingDeviceOrientationNotifications
метод для отключения поставки уведомлений.
Точно так же можно использовать UIDevice
экземпляр для получения информации и уведомлений об изменениях в состоянии заряда батареи (описанный batteryState
свойство) и уровень заряда (описанный batteryLevel
свойство). UIDevice
экземпляр также обеспечивает доступ к состоянию датчика близости (описанный proximityState
свойство). Датчик близости обнаруживает, содержит ли пользователь устройство близко к их поверхности. Включите контроль батареи или близость, распознающуюся только при необходимости в нем.
Запускаясь в iOS 4.2, можно использовать playInputClick
метод экземпляра играть щелчки ввода с клавиатуры в пользовательском вводе и представлениях аксессуара клавиатуры.
-
Возвращает объект, представляющий текущее устройство.
Возвращаемое значение
Одноэлементный объект, представляющий текущее устройство.
Обсуждение
Вы получаете доступ к свойствам возвращенного
UIDevice
экземпляр для получения информации об устройстве. Необходимо инстанцироватьUIDevice
экземпляр прежде, чем зарегистрироваться для получения уведомлений устройства.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
multitaskingSupported
СвойствоБулево значение, указывающее, поддерживается ли многозадачность на текущем устройстве. (только для чтения)
Объявление
Swift
var multitaskingSupported: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isMultitaskingSupported) BOOL multitaskingSupported
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 4.0 и позже.
-
name
СвойствоИмя, идентифицирующее устройство. (только для чтения)
Объявление
Swift
var name: String { get }
Objective C
@property(nonatomic, readonly, retain) NSString *name
Обсуждение
Значение этого свойства является произвольной алфавитно-цифровой строкой, связанной с устройством как идентификатор. Например, можно найти имя устройства на iOS в настройках General> About.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
systemName
СвойствоИмя операционной системы, работающей на устройстве, представлено получателем. (только для чтения)
Объявление
Swift
var systemName: String { get }
Objective C
@property(nonatomic, readonly, retain) NSString *systemName
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
systemVersion
СвойствоТекущая версия операционной системы. (только для чтения)
Объявление
Swift
var systemVersion: String { get }
Objective C
@property(nonatomic, readonly, retain) NSString *systemVersion
Обсуждение
Пример версии системы” 1.2”.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
См. также
-
model
СвойствоМодель устройства. (только для чтения)
Объявление
Swift
var model: String { get }
Objective C
@property(nonatomic, readonly, retain) NSString *model
Обсуждение
Возможные примеры строк модели” iPhone” и” iPod touch”.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
localizedModel
СвойствоМодель устройства как локализованная строка. (только для чтения)
Объявление
Swift
var localizedModel: String { get }
Objective C
@property(nonatomic, readonly, retain) NSString *localizedModel
Обсуждение
Значение этого свойства является строкой, содержащей локализованную версию строки, возвращенной из
model
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
userInterfaceIdiom
СвойствоСтиль интерфейса для использования на текущем устройстве. (только для чтения)
Объявление
Swift
var userInterfaceIdiom: UIUserInterfaceIdiom { get }
Objective C
@property(nonatomic, readonly) UIUserInterfaceIdiom userInterfaceIdiom
Обсуждение
Для повсеместного применения можно использовать это свойство для адаптации поведения приложения для определенного типа устройства. Например, iPhone и устройства iPad имеют различные размеры экрана, таким образом, Вы могли бы хотеть создать различные взгляды и средства управления на основе типа текущего устройства.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.2 и позже.
-
identifierForVendor
СвойствоАлфавитно-цифровая строка, однозначно определяющая устройство поставщику приложения. (только для чтения)
Объявление
Swift
var identifierForVendor: NSUUID! { get }
Objective C
@property(nonatomic, readonly, retain) NSUUID *identifierForVendor
Обсуждение
Значение этого свойства является тем же для приложений, прибывающих от того же поставщика, работающего на том же устройстве. Различное значение возвращается для приложений на том же устройстве, прибывающих от различных поставщиков, и для приложений на различных устройствах независимо от поставщика.
Обычно, поставщик определяется данными, предоставленными App Store. Если приложение не было установлено от App Store (такого как корпоративные приложения и приложения все еще в разработке), то идентификатор поставщика вычисляется на основе пакета приложения ID. Пакет ID, как предполагается, находится в формате обратного DNS.
На iOS 6 первых двух компонентах пакета ID используется для генерации идентификатора поставщика. если пакет, ID только имеет единственный компонент, то весь пакет ID используется.
На IOS 7 все компоненты пакета за исключением последнего компонента используются для генерации идентификатора поставщика. Если пакет, ID только имеет единственный компонент, то весь пакет ID используется.
Таблица 1 показывает набор пакета IDs и который части пакета ID системное использование для вычисления идентификатора поставщика.
Табличные 1Example идентификаторы пакета Пакет ID
iOS 6.x
iOS 7.x
com.example.app1
com.example.app1
com.example.app1
com.example.app2
com.example.app2
com.example.app2
com.example.app.app1
com.example.app.app1
com.example.app.app1
com.example.app.app2
com.example.app.app2
com.example.app.app2
пример
пример
пример
Например,
com.example.app1
иcom.example.app2
казалось бы, имел бы тот же идентификатор поставщика.Если значение
nil
, ожидайте и получите значение снова позже. Это происходит, например, после того, как устройство было перезапущено, но прежде чем пользователь разблокировал устройство.В то время как приложение (или другое приложение от того же поставщика) установлены на устройстве на iOS, значение в этом свойстве остается тем же. Значение изменяется, когда пользователь удаляет все приложения того поставщика от устройства и впоследствии переустанавливает один или больше из них. Значение может также измениться при установке тестовых сборок с помощью XCode или при установке приложения на устройстве с помощью оперативного распределения. Поэтому, если Ваше приложение хранит значение этого свойства где-нибудь, необходимо корректно обработать ситуации, где изменяется идентификатор.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 6.0 и позже.
-
orientation
СвойствоВозвращает физическую ориентацию устройства. (только для чтения)
Объявление
Swift
var orientation: UIDeviceOrientation { get }
Objective C
@property(nonatomic, readonly) UIDeviceOrientation orientation
Обсуждение
Значение свойства является константой, указывающей текущую ориентацию устройства. Это значение представляет физическую ориентацию устройства и может отличаться от текущей ориентации пользовательского интерфейса Вашего приложения. Посмотрите UIDeviceOrientation для описаний возможных значений.
Значение этого свойства всегда возвращается 0, если уведомления ориентации не были включены путем вызова
beginGeneratingDeviceOrientationNotifications
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Булево значение, указывающее, генерирует ли получатель уведомления ориентации (
YES
true
) или не (NO
false
). (только для чтения)Объявление
Swift
var generatesDeviceOrientationNotifications: Bool { get }
Objective C
@property(nonatomic, readonly, getter=isGeneratingDeviceOrientationNotifications) BOOL generatesDeviceOrientationNotifications
Обсуждение
Если значение этого свойства
YES
true
, совместно используемоеUIDevice
возразите отправляет aUIDeviceOrientationDidChangeNotification
уведомление, когда устройство изменяет ориентацию. Если значениеNO
false
, это не генерирует уведомлений ориентации. Уведомления ориентации устройства могут только быть сгенерированы между вызовами кbeginGeneratingDeviceOrientationNotifications
иendGeneratingDeviceOrientationNotifications
методы.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Начинает генерацию уведомлений об изменениях ориентации устройства.
Объявление
Swift
func beginGeneratingDeviceOrientationNotifications()
Objective C
- (void)beginGeneratingDeviceOrientationNotifications
Обсуждение
Необходимо вызвать этот метод прежде, чем попытаться получить данные ориентации от получателя. Этот метод включает аппаратные средства акселерометра устройства и начинает поставку ускоряющих событий к получателю. Получатель впоследствии использует эти события для регистрации
UIDeviceOrientationDidChangeNotification
уведомления, когда ориентация устройства изменяется и обновитьorientation
свойство.Можно вложить вызовы к этому методу безопасно, но необходимо всегда соответствовать каждый вызов соответствующему вызову к
endGeneratingDeviceOrientationNotifications
метод.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Заканчивает генерацию уведомлений об изменениях ориентации устройства.
Объявление
Swift
func endGeneratingDeviceOrientationNotifications()
Objective C
- (void)endGeneratingDeviceOrientationNotifications
Обсуждение
Этот метод останавливает регистрацию
UIDeviceOrientationDidChangeNotification
уведомления и уведомляют систему, что она может выключить аппаратные средства акселерометра, если она не используется в другом месте. Вы вызываете этот метод после предыдущего вызова кbeginGeneratingDeviceOrientationNotifications
метод.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
batteryLevel
СвойствоУровень заряда батареи для устройства. (только для чтения)
Объявление
Swift
var batteryLevel: Float { get }
Objective C
@property(nonatomic, readonly) float batteryLevel
Обсуждение
Уровень заряда батареи колеблется от 0,0 (полностью разряженный) к 1,0 (заряженных 100%). Прежде, чем получить доступ к этому свойству, гарантируйте, что включен контроль батареи.
Если контроль батареи не включен, состояние батареи
UIDeviceBatteryStateUnknown
и значение этого свойства –1.0.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
batteryMonitoringEnabled
СвойствоБулево значение, указывающее, включен ли контроль батареи (
YES
true
) или не (NO
false
).Объявление
Swift
var batteryMonitoringEnabled: Bool
Objective C
@property(nonatomic, getter=isBatteryMonitoringEnabled) BOOL batteryMonitoringEnabled
Обсуждение
Включите контроль батареи, если Ваше приложение должно быть уведомлено относительно изменений в состоянии батареи, или если Вы хотите проверить уровень заряда батареи.
Значение по умолчанию этого свойства
NO
false
, который:Отключает регистрацию связанных с батареей уведомлений
Отключает возможность считать состояние батареи и уровень заряда батареи
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
-
batteryState
СвойствоСостояние батареи для устройства. (только для чтения)
Объявление
Swift
var batteryState: UIDeviceBatteryState { get }
Objective C
@property(nonatomic, readonly) UIDeviceBatteryState batteryState
Обсуждение
Значение для
batteryState
одна из констант в UIDeviceBatteryState.Если контроль батареи не включен, значение этого свойства
UIDeviceBatteryStateUnknown
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
proximityMonitoringEnabled
СвойствоБулево значение, указывающее, включен ли контроль близости (
YES
true
) или не (NO
false
).Объявление
Swift
var proximityMonitoringEnabled: Bool
Objective C
@property(nonatomic, getter=isProximityMonitoringEnabled) BOOL proximityMonitoringEnabled
Обсуждение
Включите близость, контролирующую только, когда Ваше приложение должно будет быть уведомлено относительно изменений в состоянии близости. Иначе, отключите контроль близости. Значение по умолчанию
NO
false
.Не все устройства на iOS имеют датчики близости. Определить, доступен ли контроль близости, попытка включить его. Если значение
proximityMonitoringEnabled
свойство остаетсяNO
false
, контроль близости не доступен.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
proximityState
СвойствоБулево значение, указывающее, является ли датчик близости близко к пользователю (
YES
true
) или не (NO
false
). (только для чтения)Объявление
Swift
var proximityState: Bool { get }
Objective C
@property(nonatomic, readonly) BOOL proximityState
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
См. также
-
Играет входной щелчок во включенном входном представлении.
Объявление
Swift
func playInputClick()
Objective C
- (void)playInputClick
Обсуждение
Используйте этот метод для игры стандартного системного щелчка клавиатуры в ответ на пользователя, касающегося в пользовательском вводе или представлении аксессуара клавиатуры. Щелчок играет, только если пользователь включил щелчки клавиатуры в Настройках> Звуки, и только если входное представление самостоятельно включено и видимо.
Для включения пользовательского ввода или представления аксессуара для входных щелчков выполните выполняющий двух шагов:
Примите
UIInputViewAudioFeedback
протокол в Вашем вводе просматривает класс.Реализуйте
enableInputClicksWhenVisible
метод делегата возвратитьсяYES
true
.
Для получения дополнительной информации см. текстовое Руководство по программированию для iOS.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 4.2 и позже.
-
Состояние заряда батареи устройства.
Объявление
Swift
enum UIDeviceBatteryState : Int { case Unknown case Unplugged case Charging case Full }
Objective C
typedef enum { UIDeviceBatteryStateUnknown, UIDeviceBatteryStateUnplugged, UIDeviceBatteryStateCharging, UIDeviceBatteryStateFull, } UIDeviceBatteryState;
Константы
-
Unknown
UIDeviceBatteryStateUnknown
Состояние батареи для устройства не может быть определено.
Доступный в iOS 3.0 и позже.
-
Unplugged
UIDeviceBatteryStateUnplugged
Устройство не включается в питание; батарея разряжается.
Доступный в iOS 3.0 и позже.
-
Charging
UIDeviceBatteryStateCharging
Устройство включается в питание, и батарея составляет заряженных меньше чем 100%.
Доступный в iOS 3.0 и позже.
-
Full
UIDeviceBatteryStateFull
Устройство включается в питание, и батарея составляет заряженных 100%.
Доступный в iOS 3.0 и позже.
Обсуждение
Эти константы используются
batteryState
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
-
-
Физическая ориентация устройства.
Объявление
Swift
enum UIDeviceOrientation : Int { case Unknown case Portrait case PortraitUpsideDown case LandscapeLeft case LandscapeRight case FaceUp case FaceDown }
Objective C
typedef enum { UIDeviceOrientationUnknown, UIDeviceOrientationPortrait, UIDeviceOrientationPortraitUpsideDown, UIDeviceOrientationLandscapeLeft, UIDeviceOrientationLandscapeRight, UIDeviceOrientationFaceUp, UIDeviceOrientationFaceDown } UIDeviceOrientation;
Константы
-
Unknown
UIDeviceOrientationUnknown
Ориентация устройства не может быть определена.
Доступный в iOS 2.0 и позже.
-
Portrait
UIDeviceOrientationPortrait
Устройство находится в режиме портрета с устройством, сохраненным вертикально и кнопка «Домой» в нижней части.
Доступный в iOS 2.0 и позже.
-
PortraitUpsideDown
UIDeviceOrientationPortraitUpsideDown
Устройство находится в режиме портрета, но вверх тормашками с устройством, сохраненным вертикально и кнопка «Домой» наверху.
Доступный в iOS 2.0 и позже.
-
LandscapeLeft
UIDeviceOrientationLandscapeLeft
Устройство находится в альбомном режиме с устройством, сохраненным вертикально и кнопка «Домой» на правой стороне.
Доступный в iOS 2.0 и позже.
-
LandscapeRight
UIDeviceOrientationLandscapeRight
Устройство находится в альбомном режиме с устройством, сохраненным вертикально и кнопка «Домой» на левой стороне.
Доступный в iOS 2.0 и позже.
-
FaceUp
UIDeviceOrientationFaceUp
Устройство считается параллельное земле с экраном, обращающимся вверх.
Доступный в iOS 2.0 и позже.
-
FaceDown
UIDeviceOrientationFaceDown
Устройство считается параллельное земле с экраном, обращающимся вниз.
Доступный в iOS 2.0 и позже.
Обсуждение
orientation
свойство использует эти константы для идентификации ориентации устройства. Эти константы идентифицируют физическую ориентацию устройства и не связываются к ориентации пользовательского интерфейса Вашего приложения.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
-
Тип интерфейса, который должен использоваться на текущем устройстве
Объявление
Swift
enum UIUserInterfaceIdiom : Int { case Unspecified case Phone case Pad }
Objective C
typedef enum { UIUserInterfaceIdiomUnspecified = -1 UIUserInterfaceIdiomPhone, UIUserInterfaceIdiomPad, } UIUserInterfaceIdiom;
Константы
-
Unspecified
UIUserInterfaceIdiomUnspecified
Используемый, когда объект имеет набор черты, но это еще не находится в среде. Например, представление, создающееся, но не помещающееся в иерархию представления.
Доступный в iOS 8.0 и позже.
-
Phone
UIUserInterfaceIdiomPhone
Пользовательский интерфейс должен быть разработан для iPhone и iPod touch.
Доступный в iOS 3.2 и позже.
-
Pad
UIUserInterfaceIdiomPad
Пользовательский интерфейс должен быть разработан для iPad.
Доступный в iOS 3.2 и позже.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.2 и позже.
-
-
Отправленный, когда изменяется уровень заряда батареи.
Для этого уведомления, которое будет отправлено, необходимо установить
batteryMonitoringEnabled
свойство кYES
true
.Уведомления для изменения уровня заряда батареи отправляются не более часто, чем один раз в минуту. Не пытайтесь вычислить уровень дренажа батареи или время работы от аккумулятора, оставаясь; уровень дренажа может часто изменяться в зависимости от встроенных приложений, а также Вашего приложения.
Можно получить уровень заряда батареи путем получения значения
batteryLevel
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
-
Отправленный, когда изменения состояния батареи.
Для этого уведомления, которое будет отправлено, необходимо установить
batteryMonitoringEnabled
свойство кYES
true
.Можно получить состояние батареи путем получения значения
batteryState
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.
-
Отправленный, когда ориентация изменений устройства.
Можно получить новую ориентацию путем получения значения
orientation
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Отправленный, когда состояние изменений датчика близости.
Можно получить состояние близости путем получения значения
proximityState
свойство.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 3.0 и позже.