📅  最后修改于: 2021-01-11 16:18:38             🧑  作者: Mango
应用程序的成功取决于最终用户的经验。作为开发人员,我们可能会在应用程序中实现一些出色的功能。但是,如果应用程序充满了崩溃,则用户可能希望摆脱这种类型的应用程序。使用Xamarin开发移动应用程序很容易,但是仅仅开发移动应用程序还不够。要开发出色的移动应用程序,它必须传递特定的参数。应用程序应该易于使用;用户界面在所有设备和平台上都应该是完美的。应该有适当的内存管理;所有异常都应处理。使用Xamarin分析器,开发人员可以轻松地发现内存泄漏,解决性能问题和异常情况。 Xamarin分析器有助于了解应用程序的内存消耗。 Xamarin分析器提供的参数使该应用程序更加完美。
从历史上看,Mono具有一些强大的功能,例如命令行Profiler,可收集有关在Mono运行时中运行的名为Monolog Profiler的程序的信息。 Xamarin Profiler是Monolog Profiler的图形界面,它支持在Windows上对Android,iOS和tvOS应用程序进行性能分析。
Xamarin Profiler提供了不同的选项来衡量性能,它们是:
Xamarin Profiler是一个独立的应用程序,它与Visual Studio for Mac集成在一起。在这里,我们在IDE中启用分析。
下载并安装适用于我们平台的软件包
要下载Xamarin Profiler,请点击以下链接: https://download.freedownloadmanager.org/Windows-PC/Xamarin-Profiler/FREE-1.5.5.0.html
选中单选按钮以接受许可协议中的条款。
选择目标文件夹以安装Xamarin Profiler。
单击安装,它将开始安装。
安装开始:
下载后,启动安装程序以将Xamarin Profiler添加到我们的系统。
在以下平台上提供了对Xamarin Profiler的支持:
允许在我们的应用程序中进行性能分析
在成功分析应用程序之前,我们需要在应用程序的项目选项中允许“性能分析”。
为此,我们必须遵循以下步骤:
生成-> Android调试->启用开发人员检测
Xamarin Profiler可以在我们对Android或iOS应用程序进行性能分析时从IDE启动,也可以作为独立应用程序启动。
从Visual Studio启动
Visual Studio将启动Profiler并开始自动分析应用程序。探查器可用于测量内存和性能。内存管理可以通过分配和时间分析器工具来实现。
要随时保存分析会话,我们必须从Profiler菜单栏中选择File-> SaveAs。 Profiler以.mlpd格式保存文件。这是用于分析数据的高度压缩的格式。
安装Xamarin Profiler应用程序后,可以在我们的应用程序目录中找到该应用程序。
通过打开独立应用程序,我们可以将.mlpd文件加载到Profiler中。为此,我们必须选择“选择目标”并加载数据。
Xamarin Profiler分为五个部分,如下所示:
工具栏:位于Profiler顶部的工具栏,其中显示了启动和停止分析的选项。在这里,我们将选择目标进程,查看应用程序的运行时间,并选择显示探查器应用程序的拆分视图。
乐器列表:显示了分析会话中所有已加载乐器的列表。
图表:这些图表与工具列表中的相关工具水平相关。滑块(滑块的位置在Time Profiler的下方)可用于更改刻度。
仪器详细信息区域:这将显示当前仪器显示的数据。
检查器视图:这显示了由段控件选择的部分。本节取决于所选的仪器,包括:配置设置,统计信息,堆栈跟踪信息和根目录路径。
分配:分配工具提供有关应用程序对象的信息,无论它们是创建的还是垃圾的收集。
分配图将显示在Profiler的顶部。分配图显示了性能分析期间按固定间隔的内存分配量。当前,分配图是分配的总数,而不是时间点上堆的大小。分配图永远不会下降,它会增加。分配图包括堆栈中对象的分配。即使对于同一个应用程序,图表的外观也会有所不同,这完全取决于我们使用的运行时版本。
分配图显示了分配工具中数据的不同视图。分配图使开发人员能够分析应用程序的使用方式和释放内存的方式。
1.分配:分配显示所有分配的列表,并按类名称将其分组。该分配提供有关使用的类和方法以及使用的类的集合大小的信息。双击该类将显示内存分配。
分配的检查器视图提供了用于对对象进行过滤和分组的选项,提供了有关内存分配以及堆栈跟踪和根路径的统计信息。
注意:在这里,我们必须注意,只有在对应用程序进行性能分析时,才能进行快照。
2.周期:通过使用C#和F#托管代码。通过使用C#代码,创建对象的引用将变得非常普遍和容易,而这些对象将永远不会被丢弃。该工具使我们能够查明这些对象并在我们的应用程序中显示循环的引用。
Time Profiler: Time Profiler仪器测量应用程序每种方法的花费时间。应用程序会定期暂停,并在每个活动线程上运行堆栈跟踪。仪器详细信息区域中的每一行均显示执行路径,该路径已遵循。
以下屏幕截图显示了应用程序运行时收到的样本数。