如何以编程方式获取sharedUserId

时间:2018-09-08 22:13:48

标签: android

我想以编程方式获取我已经在Play商店中发布的应用程序的sharedUserId,以便可以将新应用程序的sharedUserId设置为现有应用程序的sharedUserId。

我知道你在想什么。只是让两个应用程序使用相同的硬编码sharedUserId。好吧,看来是更改旧应用程序的清单,然后再安装它会导致应用程序安装失败错误:

Application Installation Failed error

1 个答案:

答案 0 :(得分:0)

最好的答案是:停止使用sharedUserId。这主要适用于设备制造商,这些设备具有预安装的应用程序套件,更强大的利用存储快捷方式的能力以及倾向于编写不可靠的废话的趋势。普通应用程序应该使用IPC机制与其他对等应用程序进行交互,以便您不要尝试在应用程序背后更改文件,这可能会引起各种问题(例如,无效的缓存数据,文件锁定争用)。

下一个最佳答案是:从应用程序的源代码中获取旧应用程序sharedUserId的值,以便在新应用程序中使用该值。

字面上的答案是:通过getPackageInfo() on PackageManager获取另一个应用程序的PackageInfosharedUserId上有一个PackageInfo字段,它具有您想要的内容。