Xamarin表单异常堆大小和OutOfMemoryError
如何在Xamarin.Forms应用程序中启用大型堆 下面是Xamarin表单异常堆大小和OutOfMemoryError,xamarin,xamarin.android,xamarin.forms,Xamarin,Xamarin.android,Xamarin.forms,如何在Xamarin.Forms应用程序中启用大型堆 下面是MainActivity.csAndroid代码: public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity { protected override void OnCreate(Bundle bundle) { TabLayoutResource = Resource.Layout
MainActivity.cs
Android代码:
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
RoundedBoxViewRenderer.Init();
LoadApplication(new App());
}
}
请参见下面的异常屏幕截图:
进入项目选项>Android构建>常规>启用多索引和选项>Android构建>Advacnced>JavaHeapSize(设置3G),在清单文件中,您可以在应用程序标记中添加Android:largeHeap=“true”
<application android:largeHeap="true"/>
通过应用程序属性设置Dalvik/Art大堆的Xamarin方法:
Application.cs
如果为true,则应使用大型Dalvik堆创建进程;否则,将使用默认的Dalvik堆创建进程
参考:我的贡献,它为我工作:
[程序集:应用程序(LargeHeap=true)]
namespace Project.Droid
{
[Activity(.............)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
}
}
如何在VS2013中获得这些选项转到解决方案资源管理器,右键单击Android项目,例如弹出窗口中的MyProject.Droid选择属性/选项,然后按照上面的操作启用largeHeap之前,您应该尝试找出OutOfMemoryException的原因并修复它。在大多数情况下(如果不是所有的话),内存泄漏是所有评估的根源。使用Xamarin Profiler和Android Studio内存监视器来分析应用程序的内存使用情况。我们已将heapsize设置为3G,但无法找到添加标记的清单文件。它在哪里imrohit我们已经获得了清单文件并添加了标记,正如您在上面键入的一样,OutOfMemoryException仍然存在,当我们从URL加载图像时,它会使应用程序崩溃。
namespace Project.Droid
{
[Activity(.............)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
}
}