HarmonyOS鸿蒙Next中相同keystore密钥打包的两个App,获取的ANDROID_ID不一致

HarmonyOS鸿蒙Next中相同keystore密钥打包的两个App,获取的ANDROID_ID不一致 型号: VRD-AL09

HarmonyOs版本:2.0.0

相同的代码,相同的keystore密钥打包,不同的两个app。为什么获取到的 ANDROID_ID 值不一样?

Settings.Secure.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID)
4 回复

在测试中发现

  1. 同一套代码在debug运行模式,两个电脑运行安装生成的ANDROID_ID不一样。必须签名打包生成的ANDROID_ID才一样

  2. manifest 中有“android:sharedUserId=”,和没有“android:sharedUserId=”签名打包生成的ANDROID_ID也不一样

在android系统中不管是debug模式还是签名打包,生成的ANDROID_ID都不一样,不确定这是鸿蒙系统的bug还是故意为之。

更多关于HarmonyOS鸿蒙Next中相同keystore密钥打包的两个App,获取的ANDROID_ID不一致的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


您好,您的问题需要进一步定位,请您通过在线提单进一步解决:https://developer.huawei.com/consumer/cn/support/feedback/,感谢您的反馈和支持。

在HarmonyOS鸿蒙Next中,即使两个App使用相同的keystore密钥进行打包,它们获取的ANDROID_ID也可能不一致。这是因为ANDROID_ID在Android系统中是一个设备级别的唯一标识符,通常与应用的包名相关联。即使两个应用使用相同的keystore,只要它们的包名不同,系统就会为每个应用生成不同的ANDROID_ID。

在鸿蒙系统中,虽然底层机制与Android类似,但鸿蒙对应用的管理和标识方式可能有所不同。鸿蒙系统可能会根据应用的包名或其他唯一标识符来生成不同的ANDROID_ID,以确保每个应用在设备上的唯一性。因此,即使两个应用使用相同的keystore进行签名,只要它们的包名不同,获取的ANDROID_ID也会不同。

此外,鸿蒙系统可能对ANDROID_ID的生成和管理进行了优化或调整,以更好地适应其分布式架构和多设备协同的特性。这可能导致在某些情况下,即使应用使用相同的keystore,获取的ANDROID_ID也会不一致。

总结来说,在HarmonyOS鸿蒙Next中,ANDROID_ID的生成与应用的包名密切相关,即使使用相同的keystore,不同包名的应用获取的ANDROID_ID也会不同。

在HarmonyOS鸿蒙Next中,即使两个App使用相同的keystore密钥进行打包,它们获取的ANDROID_ID仍然可能不一致。这是因为ANDROID_ID是基于应用包名和签名生成的唯一标识符,即使签名相同,包名不同也会导致ANDROID_ID不同。因此,即使使用相同的keystore,只要包名不同,ANDROID_ID就会不同。

回到顶部