【问题标题】:xamarin.forms know memory usage both for android and iosxamarin.forms 知道 android 和 ios 的内存使用情况
【发布时间】:2018-03-13 19:48:13
【问题描述】:

我正在尝试使用 xamarin.forms 开发 android 和 iOS 应用程序。并且已经完成了包括Canvas 绘图的主要部分。为此,我使用了Skiasharp,对位图图像进行操作。

现在,在安卓中, 1. 如果我尝试处置在收到SIGSEGV 致命错误之前初始化的位图。 (我认为这个问题不是特定于操作系统的) 2.当我连续运行我的应用程序20-22分钟时,应用程序突然崩溃。

在 iOS 中, 当我长时间运行我的应用程序时,我的 iPhone 会挂起。直到我从电脑中的 iFunBox 卸载应用程序后它才会启动。

我想问一下 xamarin.forms 或本机项目中是否有办法找出我的内存泄漏的地方。 我如何知道当前实际使用了多少 RAM 内存?

谢谢

【问题讨论】:

标签: xamarin.ios xamarin.forms skiasharp


【解决方案1】:

对于 Android,您可以使用 Android 调试监视器工具。这是作为 Android SDK 的一部分安装的工具。

以下是更多信息的网址:

https://www.codeproject.com/Articles/798462/Diagnosing-Memory-Usage-in-a-Xamarin-Android-Appli

对于iOS,可以尝试使用原生的XCode Instrument。

以下是更多信息的网址:

https://developer.xamarin.com/guides/ios/deployment,_testing,_and_metrics/using_instruments_to_detect_native_leaks_using_markheap/

另外,下面是一篇关于 Xamarin.Forms 内存管理的有用文章。 希望对您有所帮助。

https://igorelikblog.wordpress.com/2016/07/08/xamarin-form-memory-management/

【讨论】:

  • 抱歉迟到了@Janson。我尝试了ios的链接。是针对 xamarin.ios 的吗?因为,我尝试了我的 pcl 代码,但我看不到任何导致内存泄漏的代码,如文档中所示。
  • 这个答案 (stackoverflow.com/a/45086015/5483868) 帮助我找到了在我的 Android 设备中导致的内存泄漏。
猜你喜欢
  • 2010-10-21
  • 2012-04-28
  • 2011-06-01
  • 2011-11-15
  • 1970-01-01
  • 2013-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多