根据appcelerator的文档:
Titanium.Platform.id : StringREADONLY
Applications's globally-unique ID (UUID).
On Android, this may be the UDID (unique device ID). For iOS, this is a unique identifier for this install of the application.
Previously on iOS this may have been a UDID, but access to this has been restricted by Apple.
在Android上它会返回UDID或任何其他唯一标识符,因为文档说它可能是UDID。
与iOS一样,只有UUID可用,它与以下任何一个CFUUID,NSUUID或供应商标识符相同。
答案 0 :(得分:3)
对于Android Ti.Platform.id
使用TiPlatformHelper.getInstance().getMobileId()
,它继承自Appcelerator Analytics的封闭源APSAnalyticsHelper
帮助程序。我无法共享源代码,但它基本上是我们生成的UUID并存储在持久的sqlite DB中。
对于iOS,它使用TiUtils.appIdentifier,它基本上完全相同。
所以,回答你的问题:两者都使用生成的和持久存储的UUID。只是UUID的格式在两个平台上都是不同的。
答案 1 :(得分:1)
我记录了Ti.Platform.id,我得到的结果如下
Selenium
虽然你应该明白这一点,但我已经修改了部分ID。
在他们的源代码中我只能找到这个:
titanium_mobile /机器人/模块/平台/ SRC / JAVA / TI /模块/钛/平台/ PlatformModule.java
|Ti.Platform.id | Username | Login | Ti.Platform.name - Ti.Platform.version | Ti.Platform.manufacturer + " - " + Ti.Platform.model;
| Platform ID | User | Login | OS | Device |
|--------------------------------------|--------|-------|-------------------|-----------------|
| 538B1B72-FFFF-FFFF-FFFF-192A09BEF0CB | demoiOS| 1 | iPhone OS - 8.1.2 | apple - iPad3,4 |
| bb6bffffd1695d0d | demo | 1 | android - 4.4.4 | Sony - D6503 |
哪个是java钩子,但是我找不到TiPlatformHelper给你确切的答案
您可能想检查此代码,但我找不到正确的方法 Titanium GitHub project link