Приложение NET10 MAUI аварийно завершает работу в выпуске: InvalidCastExceptionAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Приложение NET10 MAUI аварийно завершает работу в выпуске: InvalidCastException

Сообщение Anonymous »

После переноса моего приложения NET9 MAUI на NET 10 MAUI у меня возникли некоторые проблемы в версии Android.
Я обновил все пакеты, которые мог, до последней версии или предварительной версии, но появились некоторые предупреждения, не знаю почему.
Изображение

Реальная проблема заключается в том, что приложение работает нормально в режиме Отладка в эмуляторах и на реальных устройствах. Когда приложение находится в режиме Выпуск, я развертываю его на устройстве (эмуляторе или физическом устройстве). Я вижу, что приложение запускается, но затем, к сожалению, вылетает. В App.xaml.cs я добавил

Код: Выделить всё

AppDomain.CurrentDomain.FirstChanceException += (sender, e) =>
{
// Log the exception or handle it as needed
Console.WriteLine($"First chance exception: {e.Exception.Message}");
};
и я могу получить следующую ошибку:

12-19 12:51:27.389 I/DOTNET (17181): Исключение первого шанса: InvalidCast_IConvertible

но я не знаю, откуда эта ошибка. Используя CoPilot, предложил изменить этот код

Код: Выделить всё

AppDomain.CurrentDomain.FirstChanceException += (sender, e) =>
{
// Skip logging known internal SDK exceptions that are handled internally
if (e.Exception is InvalidCastException &&
e.Exception.Message.Contains("InvalidCast_IConvertible"))
{
// This is a known issue with AppCenter/AdMob SDKs in Release mode
// The exception is caught internally and doesn't affect the app
return;
}

// Log the exception or handle it as needed
Console.WriteLine($"[Error] First chance exception: {e.Exception.Message}");
};
Я не совсем уверен, что это хорошее решение, поскольку оно скрывает реальную проблему в другой части кода. Когда я запускаю приложение из Visual Studio в выпуске на физическое устройство, приложение, как обычно, аварийно завершает работу. Если я открою развернутое приложение на устройстве, оно будет работать.
Можете ли вы порекомендовать, как избежать сбоев? Правилен ли такой подход? Как узнать, откуда возникла ошибка?

Подробнее здесь: https://stackoverflow.com/questions/798 ... texception
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»