38

Google 刚刚发布了 Android 4.2,其中包括在单个设备上支持多个用户配置文件:http: //developer.android.com/about/versions/android-4.2.html#MultipleUsers

谷歌表示这将对应用程序透明,但我认为这可能会对用于识别设备、用户和安装的数据模型产生影响。

一个问题是 android_id 的使用。上面链接页面上的建议建议通过 android_id 以外的方法之一来识别设备,但我相信 android_id 被广泛用于此目的。

我的主要问题是 - 每个用户个人资料都有自己的 android_id,这意味着什么?

安装新操作系统或完成硬重置时会生成一个新的 android_id - 也许在创建新用户配置文件时会生成一个新的(这是问题 #1)?我认为可能不会,因此可以为同一个 android_id 多次安装一个应用程序 - 我认为这可能会与某些应用程序的服务器端数据模型混为一谈。

无论哪种方式,根据您识别设备的方式,您现在可以发现特定应用程序可以在单个设备上进行多次安装。

另一个问题是用户。假设每个配置文件可以有任意数量的 Google 帐户,但一个 Google 帐户必须与每个配置文件中的 Play 商店相关联。我认为您的应用也有可能在同一设备(通过 android_id)和同一用户上同时安装多个。我认为多个配置文件功能的常见用途是让单个用户在他们的手机上拥有家庭和工作配置文件 - 通常使用不同的 Google 帐户,但在某些情况下,他们可以在每个配置文件中拥有相同的 Google 帐户(例如他们不必为东西支付两次费用)。

旁注这里是在新的 ARC 平台(Chrome 上的 Android)上对 ANDROID_ID
的类似讨论。注意 - ARC 上的行为与 Android 上的不同。

4

2 回答 2

39

(没有人回答我的问题,但我现在有机会自己用 4.2 进行测试。)

答案是每个配置文件都有自己的 android_id。

想一想,这可能是最有意义的,并且会引起最少的问题。这应该会导致大多数系统将设备上的不同配置文件视为不同的设备 - 这应该不是问题。唯一的问题是正确识别设备的系统,例如。基于 wifi 或 bt mac 地址,或序列号或 IMEI,然后预期该单个设备上的多个 android_id 代表该设备上的顺序操作系统安装。(相反,错了会更安全。)

于 2012-11-20T01:38:50.150 回答
12

是的,每个用户配置文件都有自己的 ANDROID_ID。这现在记录在这里

注意:当一个设备有多个用户(在某些运行 Android 4.2 或更高版本的设备上可用)时,每个用户显示为一个完全独立的设备,因此ANDROID_ID每个用户的值都是唯一的。

请注意,尽管众所周知,制造商会搞砸他们的ANDROID_ID. 例如,摩托罗拉 Droid2为每个设备返回相同的ANDROID_ID。因此,依靠ANDROID_ID唯一标识用户配置文件或设备可能是不可靠的。

于 2014-11-19T09:53:32.617 回答