Para depurar problemas de MVVMcross de maneira eficaz, você precisa definir suas configurações de exceção no Visual Studio. Aqui está um guia passo a passo sobre como fazer isso:
1. Ativar suporte ao servidor de origem
Antes de mergulhar em configurações de exceção, verifique se você pode passar pelo código MVVMCROSS usando o GitLink. Isso permite que você depra em fontes de MVVMcross sem baixá -las manualmente.
- Ativar suporte ao servidor de origem: vá para `ferramentas> opções> depuração> general` e verifique a caixa ao lado de` Ativar suporte ao servidor de origem`. Isso permite que o Visual Studio busque o código -fonte do repositório MVVMcross Github ao depurar [5].
2. Configurar configurações de exceção
Para capturar exceções que podem ser jogadas pelo MVVMCROSS, você precisa configurar o Visual Studio para quebrar essas exceções.
- Abra as configurações de exceção: no Visual Studio, acesse `Debug> Windows> Configurações de exceção '. Isso abre a janela de configurações de exceção, onde você pode gerenciar quais exceções o depurador quebra [4].
- Habilite a quebra de exceções: Na janela Configurações de exceção, expanda a categoria de exceções de tempo de execução do idioma comum. Verifique as caixas ao lado de todas as exceções que você deseja que o depurador seja divulgado. Para depuração abrangente, convém permitir todas as exceções nesta categoria [7].
- Pesquise exceções específicas: se você estiver procurando uma exceção específica, use a barra de pesquisa na parte superior da janela de configurações de exceção. Isso ajuda você a encontrar e permitir a quebra de exceções específicas.
- Adicionar condições: se necessário, você pode adicionar condições às exceções. Clique com o botão direito do mouse em uma exceção e selecione as condições de edição. Isso permite especificar em quais condições (por exemplo, módulos específicos) o depurador deve se dividir na exceção [4].
3. Debugging mvvmcross problemas
Depois que suas configurações de exceção forem configuradas:
- Comece a depurar: comece a depurar seu aplicativo. Se ocorrer uma exceção no MVVMcross, o depurador agora se rompe com o ponto em que a exceção é lançada, permitindo inspecionar variáveis e passar pelo código [7].
- Passo pelo código MVVMCROSS: Com o suporte ao servidor de origem ativado, você pode entrar no código MVVMCROSS diretamente do seu aplicativo. Isso ajuda a diagnosticar problemas que podem estar ocultos na estrutura MVVMCROSS [5].
4. Lidando com exceções não tratadas
Se você deseja capturar todas as exceções não tratadas em seu aplicativo Xamarin Android usando o MVVMCROSS, considere implementar um manipulador de exceção global. Isso pode ser feito substituindo o método `onCreate` em sua atividade principal e configurando um manipulador de exceção não tratado [3].
Seguindo essas etapas, você pode efetivamente depurar os problemas do MVVMCROSS, definindo configurações de exceção e passando pelo código -fonte MVVMCROSS quando necessário.
Citações:[1] https://learn.microsoft.com/en-us/answers/questions/1182901/how-to-enable-the-exception-setting-option-in-debu
[2] https://stackoverflow.com/questions/21029462/debugging-mvmcross-application-in-xamarin-studio-with-mvvmcross-sources
[3] https://stackoverflow.com/questions/47306092/xamarin-mvvmcross-unhandled-exceptions
[4] https://learn.microsoft.com/en-us/visualstudio/debugger/managing-eceptions-with-the-debugger?view=vs-2022
[5] https://www.mvvmcross.com/documentation/contributing/debugging-with-symbols
[6] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[7] https://nicksnettravels.builttoroam.com/post-2018-07-31-debugging-and-contribuindo para mvvmcross-aspx/
[8] https://devblogs.microsoft.com/xamarin/demystify-build-configurações/