Android:错误 - 应用程序具有相同的打包不同签名

Mar*_*tin 10 android apk android-keystore android-studio

我正在解决android studio所说的问题

 Installation failed since the device has an application with the same package but a different signature. . . .. 
Run Code Online (Sandbox Code Playgroud)

这是正确的,因为我最近签署了一个APK并上传到我的播放开发者控制台的测试版区域.

现在我尝试在本地调试它,默认情况下我相信所有的Android项目都是由调试密钥库签名的,因此签名会有所不同.

处理这个问题的最佳方法是什么?是否可以使用我的发布密钥签署我的调试版本,这是否存在潜在的危险?

如何强制使用我的发布密钥库签署调试版本而不会失去调试能力等?

或者我应该继续卸载并重新安装不同的版本 - 这似乎是最糟糕的解决方法.:-)

Aar*_*n D 21

您可以使用发布密钥对应用程序进行签名,同时保留调试选项 - 您只需将发布密钥添加到Android Studio中(或者如果您在那里签署应用程序,则在命令行中指定它).

在Android Studio中,右键单击项目浏览器中的应用程序并打开模块设置.选择您的应用程序模块,然后单击"签名"以确保列出您的发布密钥库.然后在"构建类型"下,确保调试目标和发布目标共享相同的签名配置,并且调试目标的debuggable设置为true.他们现在应该共享相同的密钥.

有关应用程序签名的更多信息,请参阅此处的开发人员文档.

我没有听说过使用相同的密钥进行调试和发布的缺点,只要私钥保持安全(读取:不受版本控制).

  • 嘿,我尝试按照步骤操作,但没有看到“签名”按钮,只有“签名配置”选项卡。我尝试设置它,但没有成功。帮助? (3认同)

Ant*_*ony 6

就我而言,升级 Android Studio 后,我删除了 $HOME/.android 文件夹,这使得 Android Studio 创建了一个新的 $HOME/.android/debug.keystore。复制旧的 debug.keystore 后,它再次工作。