-1

正如我在标题中所说,我的 Android 应用程序存在性能问题。我有一个公共静态tabhost和一个计时器和一个Google Maps。定时器计划每 3 秒工作一次。它正在根据我的与数据库相关的WebService更新某些内容。

例如,如果我的网络服务响应等于“1”,那么我将切换选项卡 0,否则切换 1。在这种情况下,当我切换到带有此更新的选项卡 1 中的谷歌地图时,一切正常。当第二次更新结果为“0”时,我将当前选项卡设置为 0。在此选项卡中,活动性能还可以。然后我输入了放置在此选项卡上的子活动,一切都正常了。但是当我尝试使用“返回”按钮返回时,我需要花费 3 或 4 秒才能返回(返回到选项卡 0)

那有什么问题?

                    if(response.equals("1"))
                    {
                        if(CTSMainActivity.tabHost.getCurrentTab()!=0)
                            CTSMainActivity.tabHost.setCurrentTab(0);
                    }
                    else if(response.equals("0"))
                    {
                        if(CTSMainActivity.tabHost.getCurrentTab()!=1)
                            CTSMainActivity.tabHost.setCurrentTab(1);
                    }

任何帮助将不胜感激。

编辑 :

我只是用谷歌搜索它并得到了一些东西。我使用了 DDMS 方法分析工具,看到android/widget/Listview.measureHeightofChildren(IIII)I 进程使用了​​ 3.7 秒。它的解决方案是什么?

编辑 :

我有点找到解决方案,请点击以下链接:Android - Remove Google Maps Fragment onPause and add back onResume

4

1 回答 1

0

我已经通过删除 tabHost 解决了这个问题。并使用带有new Intent() 的活动;请参考这个网址:Android - Remove Google Maps Fragment onPause and add back onResume

于 2013-05-11T09:52:37.857 回答