分析 iOS 文件提供程序扩展的内存使用情况

问题描述 投票:0回答:1

我们希望使用 Instruments 分析 iOS 应用程序的文件提供程序扩展的内存使用情况。文件提供程序扩展只能访问有限的 RAM(目前 iOS 17 上为 15MB),因此优化内存使用非常重要,因为如果扩展进程尝试分配更多内存,系统会终止它。

那么,我们如何分析文件提供程序扩展的内存使用情况?

理想情况下,我想象这样的事情是可能的:

  1. 通过 Xcode 将优化版本安装到设备。
  2. 启动 Instruments,选择 Allocations 模板并让 Instruments 等待扩展启动。
  3. 我们打开设备上的文件应用程序并开始浏览扩展内容。
  4. 扩展进程启动,并附加仪器来记录分配。

这样的事情可能吗?这怎么办?

ios xcode instruments ios-app-extension fileprovider-extension
1个回答
0
投票

根据苹果的文档我发现这在内存受限应用程序的设备上是不可能的,因为系统在达到内存限制时会杀死进程。当您使用 Instruments 附加到进程时,它还会导致内存使用量增加并终止进程。不过,您可以在内存使用不受限制的模拟器中进行测试。

问题中描述的步骤是可能的,但由于上述原因实际上只能在模拟器中使用。只需安装优化的构建并启动 Instruments,选择分配模板以及正确的模拟器和目标进程即可。

“仪器”下拉列表中文件提供程序扩展的目标进程要么是可执行文件的名称(如果正在运行),要么是与应用程序本身名称类似的扩展(如果未运行)。将鼠标悬停在工具提示上,它会在工具提示中显示路径,因此您可以检查以确保选择正确的路径。

© www.soinside.com 2019 - 2024. All rights reserved.