F-Droid显示的错误消息位于“新程序包正在请求已安装在设备上且没有匹配签名的共享用户”行中。错误代码为INSTALL_FAILED_SHARED_USER_INCOMPATIBLE / -8。
尝试从F-Droid安装应用程序“ Termux”时。本质上是安装apk,而不是从Play商店安装。
我以前曾在Play商店中安装过该应用,然后又尝试将其从F-Droid重新安装之前将其卸载。我认为这是最可能的原因,尽管我无法在另一台设备上复制。
(抢先回答)事实证明,/data/system/packages.xml仍然包含该应用程序的共享用户条目,包括签名。这就解释了为什么我无法安装其他apk,因为尽管它们是相同的应用程序和开源,但它们是用不同的密钥签名的。
答案 0 :(得分:0)
警告:这是解决此问题的臂膀方法。它还需要root权限。
基于one answer用户tweakradje在xda-developers上的使用经验,我发现以下几点适用于我:
使用文本编辑器对其进行编辑,然后删除以apps包标识为name属性的xml-block。在这种情况下,应用"Termux"的示例:
<shard-user name="com.termux" userId="10102">
<sigs count="1">
<cert [...]/>
</sigs>
</shared-user>
这很可能不适用于系统软件包(以“ android”开头的软件包,例如“ android.uid.system”)。
答案 1 :(得分:0)
无需root权限即可解决问题:
在 Google Play 中卸载 termux 并尝试从 F-机器人。
手机没有root,所以上面建议的解决方案不可用。但是我注意到仍然安装了一些随附的 termux 应用程序,即 termux API、termux tasker 和 termux 样式。
卸载它们并清空几个可能相关的应用(包括 google play 商店、google play 服务和软件包安装程序)的缓存后,我能够从 F-Droid 安装 termux 以及随附的应用。>