Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android代码优化提示_Android - Fatal编程技术网

Android代码优化提示

Android代码优化提示,android,Android,我想知道,编写在android主线程中循环400-500次的for循环是一种好的做法,还是应该选择另一个线程。提前感谢。既然您说循环正在处理几百个坐标,那么它肯定应该是一个或一个背景线程。即使用户在此期间无法与UI交互,这也将允许您在此期间显示微调器或对话框。此外,如果UI线程在一定时间内没有响应,操作系统将认为应用程序已崩溃,并向用户提供“此应用程序已停止响应”对话框。循环的作用是什么?如果它阻塞了UI线程,那么它肯定应该在后台线程中。我正在处理的循环是围绕一系列LatLng点的循环,并检查每

我想知道,编写在android主线程中循环400-500次的for循环是一种好的做法,还是应该选择另一个线程。提前感谢。

既然您说循环正在处理几百个坐标,那么它肯定应该是一个或一个背景线程。即使用户在此期间无法与UI交互,这也将允许您在此期间显示微调器或对话框。此外,如果UI线程在一定时间内没有响应,操作系统将认为应用程序已崩溃,并向用户提供“此应用程序已停止响应”对话框。

循环的作用是什么?如果它阻塞了UI线程,那么它肯定应该在后台线程中。我正在处理的循环是围绕一系列LatLng点的循环,并检查每个点上的一些条件。您认为我应该使用AsyncTask吗?在处理您的数据时,您是否需要任何用户界面?如果它的进程很繁重,你应该在后台线程中运行它。嘿,surender,我在UI中只有一个进度条,它似乎冻结了。您是否认为此循环正在冻结它。如果您试图更新循环中的进度条,它将不起作用,因为循环将冻结UI,直到控件返回系统。否则,暂时注释掉你的循环,以测试这是否是导致冻结的原因。