Android应用程序可以在模拟器上运行很好但在Android手机上运行时非常慢

时间:2011-03-08 10:10:40

标签: java android

我开发的Android应用程序可以在模拟器上正常运行,但是当我将它导出到.apk并安装到我的Galaxy S时,它显示任何内容都很慢。

我的应用程序必须连接在localhost上运行的Web服务和数据库。我尝试将Web服务和数据库更快地移动到另一台主机,但它无法解决我的问题。任何人都可以建议我该怎么办?

感谢您的任何建议。

聚苯乙烯。我使用Java和Eclipse和Tomcat开发我的应用程序

4 个答案:

答案 0 :(得分:1)

使用traceview检查代码的哪些部分很慢。而不是优化这些部分。

如果使用慢速外部服务(网络调用),您可能希望使用AsyncTask在后台运行它们。此外,最好向用户显示某种进度通知,以便他们知道正在处理的事情。

答案 1 :(得分:1)

要找到该程序的瓶颈,请在设备上使用Traceview。它可以在Eclipse IDE中轻松启动。

您很可能正在运行模拟器,共享运行模拟器的PC的高速连接。该设备具有较低的带宽和较大的延迟。

大部分时间都花在接收数据上。因此压缩传输实际上加速应用程序。压缩答案在服务器和客户端上都是直截了当的,例如参见this answer

如果这还不够,您需要查看从服务器发送的内容,看看是否可以预取或省略某些内容。

答案 2 :(得分:1)

三星Galaxy S中的数据库操作非常慢(特别是在2.2更新后)。如果模拟器上的应用程序性能良好,那么它也可以在其他设备上正常工作

答案 3 :(得分:0)

你必须详细说明这一点!听起来像是在使用外部数据库。你是如何与它互动的?异步?如何传递数据?

需要更多信息。