我的应用程序现在正在使用单线程(UI线程(,它有一些代码,比如。。。
-
继续检查我的手机状态
-
谷歌地图服务
-
继续将标记添加到当前状态
-
并且有一个";弹出菜单";
并且当";弹出菜单";充气,应用程序框架下降。
我从未尝试过将单个线程一分为二,这是防止janky(laggy(帧的正确方法吗?
或者有类似的替代方案吗?
不,更多的线程可能不是答案。
首先,android gui是单线程的,您只能使用主线程与它交互。
你在做一些类似于弹出菜单的官方文档/指南的事情吗?
https://developer.android.com/guide/topics/ui/menus#PopupEvents
意思是编码类似这样的东西:
public void showMenu(View v) {
PopupMenu popup = new PopupMenu(this, v);
// This activity implements OnMenuItemClickListener
popup.setOnMenuItemClickListener(this);
popup.inflate(R.menu.actions);
popup.show();
}
如果你没有做更多的事情,你就不可能优化得更多,也不容易。如果是,也许可以将其简化为文档中的基本示例。
否则,我会认为你在做其他事情时消耗了太多的时间预算,希望这些事情可以被优化/暂停,这样弹出菜单的膨胀就不会超过你的限制。