Инструмент мониторинга памяти для приложений Unity на Android

В настоящее время я разрабатываю приложение с интенсивным использованием памяти в Unity3D. Теперь я хочу знать, сколько памяти требуется приложениям в определенные моменты времени и действия.

Я знаю инструмент мониторинга памяти в AndroidStudio, но кажется, что он не очень коррелирует с моими наблюдениями за потреблением памяти самим приложением.

Есть ли хороший способ отслеживать потребление памяти приложением Unity3D, развернутым на телефоне Android?

Спасибо.


person Mathis    schedule 14.10.2015    source источник


Ответы (1)


Вы можете использовать встроенный инструмент Profiler, он довольно точен, и с помощью графиков вы должны легко найти всплески памяти/процессора.

Кроме того, Unity предоставляет вам следующее: http://docs.unity3d.com/ScriptReference/Profiler.GetRuntimeMemorySize.html

Очень хороший способ измерить использование ресурсов выбранными объектами.

Кроме того, вы можете использовать PerformanceCounter, но вы должны включить полные библиотеки .NET 2.0 (а не подмножество).

System.Diagnostics.PerformanceCounter ramCounter = new PerformanceCounter("Memory", "Available MBytes");
Debug.Log(ramCounter.NextValue()+"MB");
person Rafal Wiliński    schedule 14.10.2015
comment
Спасибо за ваш ответ. А разве профайлер не работает только тогда, когда я запускаю приложение в Редакторе? Но я хочу измерить использование памяти прямо на телефоне (приложение не работает в редакторе). Хорошо, спасибо, посмотрю на них. - person Mathis; 15.10.2015
comment
Ладно, сначала не работал профилировщик, а теперь работает, не знаю почему. Спасибо! - person Mathis; 15.10.2015