0

在 Android 上开发,经常会发生以下情况:

  • 我导出了我的应用程序的发布版本,将其安装在设备上并运行它。
  • 我做了一些改变。我再次导出
  • 我在设备上重新安装它
  • 我从任务管理器中杀死一切
  • 我再次运行安装

所以我希望新安装的应用程序版本能够运行。但相反,我仍在运行旧代码。我可以肯定地说出来,因为我添加了一些 Log.d() 跟踪并且它们没有出现在日志中。

所以,我猜旧版本的类仍然在内存中的某个地方,而新的类直到............直到某些东西才被加载。

那么我必须做什么(除了重启,请)以确保在运行应用程序时运行新安装的应用程序?

杀死应用程序还不够吗?

由于几个原因,我不想在重新安装之前卸载它。或者这是唯一的方法?

4

1 回答 1

1

我的建议是将其保持在调试模式。

如果您正在交换,那么是的,您需要继续卸载。

从我看到的情况来看,Debug版本和release版本是一模一样的,我只是把release版本放在最后确保一切正常,然后才真正发布。

卸载应用程序,然后重新安装应该 100% 运行新代码。由于取消关联 - 不同的签名(出于您需要先卸载的确切原因),即使是存储的应用程序数据之类的东西也会丢失。

您可以随时尝试增加版本号,看看是否安装在顶部,而无需卸载。我没有测试过的东西,但会非常有用。

确保您正在成功构建它。并确保您使用的是正确的 APK,也就是不是旧的。(我在构建时覆盖了我的旧 APK)。只要它成功,你就会有新的代码。也许您的构建失败,因此您错误地使用了未更新的 APK。

不过,我仍然推荐调试模式。它使测试部署更有效,我没有注意到任何区别。

希望有些帮助。

于 2012-07-14T08:57:06.530 回答