Есть ли способ или взломать какой цвет (черный/белый) iPhone, iPad или iPod touch установлен на iOS?
Я хочу загрузить соответствующие скины интерфейса в случае черных или белых устройств.
Есть ли способ или взломать какой цвет (черный/белый) iPhone, iPad или iPod touch установлен на iOS?
Я хочу загрузить соответствующие скины интерфейса в случае черных или белых устройств.
Там есть частный API для извлечения как DeviceColor
, так и DeviceEnclosureColor
.
UIDevice *device = [UIDevice currentDevice];
SEL selector = NSSelectorFromString(@"deviceInfoForKey:");
if (![device respondsToSelector:selector]) {
selector = NSSelectorFromString(@"_deviceInfoForKey:");
}
if ([device respondsToSelector:selector]) {
NSLog(@"DeviceColor: %@ DeviceEnclosureColor: %@", [device performSelector:selector withObject:@"DeviceColor"], [device performSelector:selector withObject:@"DeviceEnclosureColor"]);
}
Я написал об этом и предоставил пример приложения:
http://www.futuretap.com/blog/device-colors/
Предупреждение. Как уже упоминалось, это частный API. Не используйте это в сборках App Store.
Ответ на вопрос НЕТ (на данный момент), и лично я не думаю, что это стоит того, потому что, если конечный пользователь использует скин или дополнительный корпус для своего iPhone
Я бы предложил сначала спросить пользователя: "Эй, какой цвет вашего телефона?" а затем выполните соответственно.
Кроме того, исследование предоставило мне эту информацию, я не уверен, что она ИСТИНА, или если она поможет вам.
Серийный номер - это ключ:)
Если aabccdddeef
является серийным номером iPhone 4, ee
представляет цвет, (A4 = черный). Я надеюсь, что некоторые из вас здесь проверит эту информацию с вашей, чтобы узнать, правда ли это.
Только мои 2 цента стоит - если кто-то ищет цвета iPhone 5c, цвета ниже выбираются с веб-сайта Apple.
Надеюсь, что это полезно для всех: -)
iPhone 5c Цвета:
Green
R 179
G 243
B 142
HEX #B3F38E
Blue
R 123
G 195
B 252
HEX #7BC3FC
Yellow
R 255
G 243
B 141
HEX #FFF38D
Red
R 252
G 132
B 142
HEX #FF848E
White
R 239
G 239
B 239
HEX #EFEFEF
В соответствии с информацией, разбрызганной по сети, цвет устройства кодируется в серийном номере. Блог iFixit указывает, что в третьем и втором-последнем положениях хранятся данные: xxxxxxxxCCx
Для iPhone 4, A4
указывает черное. Никто, кажется, не имеет кода для белого iPhone 4, что странно. Одно из сообщений указывает, что это может быть DZ
. Кажется, что все просто обманывают всю информацию здесь.
Еще один сайт, mydigitallife.com, содержит статью, в которой перечислены цветовые коды для разных старых моделей. В некоторых случаях три позиции должны считываться вместе, чтобы определить цвет. Согласно этому сайту, все модели iPhone 3Gs имеют 3N
в позиции цветового кода; 3NP
указывает "Черный 16GB 3Gs", а 3NQ
означает "Белые 16GB 3Gs". Оригинальный (2G) iPhone также использует все три позиции для указания размера (не было параметров цвета).
На SO уже есть несколько вопросов, которые помогут вам получить серийный номер устройства.
Как отмечали другие, нет, нет официального способа получения этой информации. Apple четко знает (смотрите в iTunes при синхронизации), чтобы они могли сделать это доступным. Возможно, стоит поднять радар .
В целях отладки я собрал более полный список возможных ключей deviceInfoForKey:
.
Интересными клавишами для обозначения (для этого вопроса) являются DeviceRGBColor
DeviceEnclosureRGBColor
. Значения представляют собой целое число, которое представляет значение RGB в форме 0x00rrggbb
.
Здесь, для справки, все ключи, которые я нашел:
ActiveWirelessTechnology
AirplaneMode
assistant
BasebandCertId
BasebandChipId
BasebandPostponementStatus
BasebandStatus
BatteryCurrentCapacity
BatteryIsCharging
BluetoothAddress
BoardId
BootNonce
BuildVersion
CertificateProductionStatus
CertificateSecurityMode
ChipID
CompassCalibrationDictionary
CPUArchitecture
DeviceClass
DeviceColor
DeviceEnclosureColor
DeviceEnclosureRGBColor
DeviceName
DeviceRGBColor
DeviceSupportsFaceTime
DeviceVariant
DeviceVariantGuess
DiagData
dictation
DiskUsage
EffectiveProductionStatus
EffectiveProductionStatusAp
EffectiveProductionStatusSEP
EffectiveSecurityMode
EffectiveSecurityModeAp
EffectiveSecurityModeSEP
FirmwarePreflightInfo
FirmwareVersion
FrontFacingCameraHFRCapability
HardwarePlatform
HasSEP
HWModelStr
Image4Supported
InternalBuild
InverseDeviceID
ipad
MixAndMatchPrevention
MLBSerialNumber
MobileSubscriberCountryCode
MobileSubscriberNetworkCode
ModelNumber
PartitionType
PasswordProtected
ProductName
ProductType
ProductVersion
ProximitySensorCalibrationDictionary
RearFacingCameraHFRCapability
RegionCode
RegionInfo
SDIOManufacturerTuple
SDIOProductInfo
SerialNumber
SIMTrayStatus
SoftwareBehavior
SoftwareBundleVersion
SupportedDeviceFamilies
SupportedKeyboards
telephony
UniqueChipID
UniqueDeviceID
UserAssignedDeviceName
wifi
WifiVendor
Нет. Невозможно обнаружить внешний цвет любого устройства.