UI应该中断的最长时间是多少?

时间:2015-12-03 11:55:09

标签: android ios performance user-interface

我正在对应用进行性能分析,因为某些部分非常慢,例如,数据库咨询需要0.310秒。如果我在主线程中执行此操作,UI中断非常明显,应用程序感觉不到响应。

但是你应该打断应用程序的最长时间是多少,可接受的是什么?

我想尽可能快地制作它,但也不想迷恋并花费数小时的工作来在几毫秒内缩短时间。

3 个答案:

答案 0 :(得分:2)

iOS的情况下,UI呈现为60fps,因此理想的最大时间为1/60秒,因此UI不会跳过帧。您可以从想要达到的最低fps中计算出所需的性能。

无论如何,充分利用您可以使用的所有工具,例如XCode的Time Profiler。从最慢的代码块开始并继续上升。

答案 1 :(得分:1)

但是你应该打断应用程序的最长时间是多少,可接受的是什么?

<强> 0

没有定义接受等级,这完全取决于您可以提供的用户体验有多好。有背景线程/ NSOperationQueue / GCD。只有当它是UI级别的操作时,才使用主线程。

答案 2 :(得分:1)

在Android中

Android会显示触发器ANR

通常,如果应用程序无法响应用户输入,系统将显示ANR。例如,如果应用程序阻止UI线程上的某些I / O操作(通常是网络访问),那么系统就无法处理传入的用户输入事件。

请参阅链接ANR

在5秒内没有响应输入事件(例如按键或屏幕触摸事件)ANR对话框将会弹出。