Устранение неполадок профилировщика Xamarin
Ведение журнала и диагностика
Команда Xamarin может помочь отслеживать проблемы, если вы предоставляете нам информацию, в том числе:
- Экранная рассылка проблемы, сбоя или сбоя, а также рабочий процесс, ведущий к нему.
- Выходные данные журнала (см. ниже).
- MLPD создается для сеанса профилирования (см. ниже).
Получение выходных данных журнала
В журналах Mac сохраняются ~/Library/Logs/Xamarin.Profiler/Profiler.<date>.log
в .
В Windows они сохраняются %appdata%Local//Xamarin/Log/Xamarin.Profiler/Profiler.<date>.log
в папке "Пожалуйста, включите последний журнал при отправке проблемы".
Мы добавляем больше ведения журнала, так что эти выходные данные должны расти и становиться более полезными с течением времени.
Создание MLPD-файлов
MLPD-файл — это сжатые выходные данные профилировщика среды выполнения mono. Xamarin Profiler GUI считывает данные из MLPD и отображает его для пользователя. MLPD-файлы являются полезными средствами отладки для Xamarin, так как они помогают нашим инженерам диагностировать проблемы, которые профилировщик может иметь с данными.
MLPD для текущего сеанса автоматически сохраняется в каталоге Mac /tmp
и может быть определен меткой времени. Если включить ведение журнала, первые выходные данные будут пути к MLPD-файлу. Файл MLPD обычно сохраняется в каталоге, начиная с ~/var/папок...
MLPD для текущего сеанса также можно сохранить, выбрав команду "Сохранить файл > как..." в меню Профилировщика:
Visual Studio для Mac.
Visual Studio.
Важно отметить, что MLPD содержит много сведений, а размер файла будет большим.
Устранение неполадок
В приведенном ниже списке показаны распространенные хоты, обходные пути и советы и рекомендации по использованию Профилировщика.
Примечание.
Чтобы разблокировать эту функцию в Visual Studio Enterprise в Windows или Visual Studio для Mac, необходимо быть подписчиком Visual Studio Enterprise.
Не удается увидеть параметр профилировщика iOS или неактивен [Visual Studio и Visual Studio для Mac]
Проверьте следующие параметры, чтобы устранить эту проблему:
- Убедитесь, что используется конфигурация отладки
- Убедитесь, что вы используете сборщик мусора SGen.
- Убедитесь, что платформа поддерживается.
- Убедитесь, что у вас есть правильная лицензия.
- Убедитесь, что вы выполнили вход и правильно выполнили проверку подлинности.
- [Visual Studio] Вы должны использовать Visual Studio Enterprise и иметь действительную лицензию Enterprise.
При попытке запустить профилировщик возникает ошибка.
Если при использовании профилировщика в Visual Studio возникает эта ошибка:
Обычно это связано с тем, что не удается запустить симулятор или эмулятор. Попробуйте и запустите приложение обычно, исправьте проблемы, которые он дает, а затем повторите попытку использования профилировщика.
Просмотр определенного потока
Если у вас есть поток, который вы хотели специально смотреть, это было бы идеальное имя потока в самом начале его создания, чтобы получить ThreadName
вместо 0x0
. Например, чтобы задать имя потока как UI
, можно использовать следующий код:
RunOnUiThread (() => {
Thread.CurrentThread.Name = "UI";
});