我在真实设备上对Android应用程序进行debbuging有问题(在Galaxy mini和Galaxy Core Plus上测试)。 App使用Spring RestTemplate来使用REST服务。通常,在没有调试器的app运行期间,对服务器的请求大约需要5秒。但在我尝试调试此应用程序(甚至没有设置断点)后,应用程序运行速度非常慢。我发现瓶颈是休息请求,需要大约50秒而不是5秒。在他们的项目中使用RestTemplate时是否有其他人有类似的问题?或者这在我的项目配置中是特别的。有没有办法加快调试过程(我根本不需要调试RestTemplate代码,只需要我的app类)? 谢谢你的推荐
答案 0 :(得分:0)
我在Android设备上调试遇到了同样的问题。我的团队已经做了一些事情来使调试花费更少的时间。
如果您正在调试与服务器流量无关的内容,那么使用Log Cat可以节省您的时间。 Log Cat和Debugger之间的选择在很大程度上取决于您尝试调试的性质。 另一件可能有用的事情是通过暂时禁用REST模板代码并使用硬编码值进行单元测试。对于我的团队,我们使用REST模板加载餐馆的菜单。我们经常会禁用其他模板代码和硬编码菜单值,因为它们会进入服务器。这使我们可以测试内部操作,而无需使用REST和调试器的时间成本。一旦我们确信代码按照我们想要的方式工作,我们就会用来自服务器的流量替换我们的硬编码值并对其进行测试以验证它是否按照我们预期的方式工作。
如果您正在调试服务器流量,您可能会发现难以追踪的错误请求。您可能需要花费数小时调整代码并在调试器上重新运行应用程序以跟踪问题。如果每次测试花费差不多一分钟,那么时间会快速增加。如果这是您的条件,请考虑使用fiddler。http://www.telerik.com/download/fiddler。它的工作方式是在程序中输入请求URL,标题和正文。然后你模拟通话。如果您收到错误请求,则无需退出应用,更改某些代码,然后重新运行应用以测试更改。相反,您只需更改请求中的某些内容并再次运行即可。花费5分钟的东西可以在5秒内完成。如果此类信息有用,Fiddler还允许您查看原始请求和响应。我遇到了一些错误。
调试器可能会非常慢,特别是对于Spring REST。部分原因是我们使用调试器支付的价格。我建议用fiddler进行调试。我希望你能找到有用的东西。