我使用一台我无法访问的PC编译了一个包含sqlite数据库的项目。人们使用它并将记录插入数据库。我没有任何访问他们的平板电脑。我犯了一个错误,我发送了他们在bin
目录中的apk。我改变了程序,我想告诉他们更新他们的应用程序,但当他们尝试更换应用程序时,android不会让他们。所以我必须签署我的apk与我在该计算机上制作的apk的签名相同。
我该怎么办 ?谢谢你的帮助。
答案 0 :(得分:2)
扩展我的评论:
如果您无法访问旧签名,那么您真的无法做到。听起来你在谈论调试签名。正如您所发现的,这在机器之间会有所不同,如果您无法访问旧机器,那么它只是消失。
出于安全原因,通常是一件好事。如果有可能恢复你的密钥,任何人都可以做到。然后他们可以恶意修改应用程序并将其作为替代品上传。
正如您所知,Android不允许您安装与当前安装版本具有不同签名的更新。如果您的用户完全卸载了该应用,则他们就可以安装新应用。这绝对不方便,客户服务也很头疼,但没有其他办法可以做到。
请注意,用户将丢失他们在应用中拥有的任何数据库等。它将作为一个全新的安装,因为它是它的本质。
理论上, rooted 用户可以使用任意数量的实用程序备份旧数据库/首选项,并在以后还原它们。实际上,即使可以这样做的大多数用户都不会为此烦恼。