Получение исключения OutOfMemoryException в Xamarin
java.ленг.OutOfMemoryError. Рассмотрите возможность увеличения стоимости $(JavaMaximumHeapSize). Java закончилась память во время выполнения - Ява.exe'
Я получаю исключение из памяти в моем проекте visualstudio Xamarin пожалуйста, помогите мне, как я могу решить эту проблему.
7 ответов:
Если вы хотите увеличить размер кучи вашего приложения (а не процесс сборки), вы можете установить это в своем AndroidManifest.XML-код:
<application android:largeHeap="true"></application>
для visual studio 2015 щелкните правой кнопкой мыши проект -- > свойства -- > параметры Android -- > расширенный и размер кучи там.
когда у вас закончится размер кучи 1G, начните оптимизировать ресурсы.
сначала проверьте, не дублируете ли вы экземпляры изображений, сохраняя одно и то же изображение в памяти несколько раз. Для этого используйте библиотеку ffimageloading (https://github.com/luberda-molinet/FFImageLoading) получить его на nuget быстро и легко.
затем оптимизируйте изображения, которые вы используете. Для больших изображений, кроме значков, попробуйте преобразовать все в jpeg, избегая png с прозрачностью, которая когда-то была сохранена я за постоянные ОМС.
затем попробуйте использовать миниатюры вместо изображений, когда у вас могут быть большие загруженные изображения на удаленном устройстве. На вашем сервере предварительно создайте миниатюры для разных размеров, мини, малых, средних , нормальных, больших, xlarge и т. д., и загрузите только изображения нужного вам размера. Это экономит много памяти и скорости.