iPhone / iPod 颜色检测

5

可能重复:
如何检测iPhone / iPod的颜色?

是否有可能在iPhone / iPod上本地或在移动浏览器中检测设备的颜色?

我正在与一个设计师合作,他想让Web应用程序根据设备的颜色做出响应。

enter image description here


1
那将是一个非常酷的功能。不过如果你感到绝望,可以让用户通过选项来选择它。 :) - Almo
1
这需要经验测试,但可能IMEI指示手机的颜色。 - KevinDTimm
1
这实际上是一个很棒的想法。嘿。 - ceejayoz
2个回答

5
我不认为这是可能的。内部硬件(将所有组件固定在一起的“主板”和组件本身)都是在没有关于最终外壳的任何知识的情况下制造的。软件(固件和iOS)也是如此,因为所有设备都获得完全相同的软件副本,每个字节都相同,除了可能嵌入固件中的序列号。可能情况是Apple为不同的外壳使用不同的设备序列号范围,但这只是一种猜测。

就像建造汽车一样:所有组件(引擎、电子设备等)都是平等制造的,无论最终汽车涂什么颜色。实际上,汽车在喷漆之前完全组装完成,所有硬件和所有软件都已准备好使用;直到最后一秒,涂什么颜色的最终决定可能会改变。


更新

我对这个话题进行了更多的调查,并发现“猜测”并不像我以为的那么疯狂。似乎确实是这样,苹果公司针对不同的设备颜色使用不同的序列号范围。序列号(以及类似的数字,如iPhone的IMEI)是每个制造的设备不同的唯一部分。

过去,苹果使用以下序列号格式(不确定这是否仍然是最新的,但对于iPhone 4来说仍然是最新的):

AABCCDDDEEE

 AA = ID of the factory that manufactured the device.
  B = Year of production: 8=>2008, 9=>2009, 0=>2010, 1=>2011, etc.
 CC = Week number of the year.
DDD = Production index number, is reset every week, base-34 encoded.
EEE = Model ID.

有趣值是“型号ID”。同一设备的不同颜色和可用存储量会有不同的型号ID。

我没有找到所有可能值的完整列表。即使有这样一个完整的列表,你还需要保持它的最新状态,因为苹果不断发布新型号,所以这个列表可能过时,在几个月内(至少每年一次,甚至两次)更新。以下是序列号(EEE)后三位的示例值:

VR0: iPhone 2G Silver 4GB
WH8: iPhone 2G Silver 8GB
0KH: iPhone 2G Silver 16GB
Y7H: iPhone 3G Black 8GB
Y7K: iPhone 3G Black 16GB
3NP: iPhone 3GS Black 16GB
3NR: iPhone 3GS Black 32GB
3NQ: iPhone 3Gs White 16GB
3NS: iPhone 3Gs White 32GB
A4S: iPhone 4 Black 16GB
A4T: iPhone 4 Black 32GB

目前我还没找到当前iPod产品的样本数值。


3
这不是事实。 iTunes 和 Xcode 通常会正确显示设备的颜色,因此至少可以通过 USB 进行阅读。 - grahamparks
1
@grahamparks 那很可能是真的,苹果使用不同的序列号范围。这对他们来说没问题,因为每当这些范围发生变化时,他们只需发布一个带有更新范围数据库的iTunes更新即可。为自己的应用程序创建这种数据库可能不是一个好主意,因为您将很难保持其最新状态。 - Mecki

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接