1 Star 0 Fork 0

yinghualuowu/Pixeval

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
App.xaml.cs 2.42 KB
一键复制 编辑 原始数据 按行查看 历史
Dylech30th 提交于 2020-02-19 23:37 . bug fix
// Pixeval - A Strong, Fast and Flexible Pixiv Client
// Copyright (C) 2019 Dylech30th
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as
// published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
using System;
using System.Threading.Tasks;
using System.Windows;
using Pixeval.Persisting;
using Refit;
#if RELEASE
using Pixeval.Objects.Exceptions.Logger;
#endif
namespace Pixeval
{
public partial class App
{
public App()
{
if (Dispatcher != null)
Dispatcher.UnhandledException += (sender, args) => DispatcherOnUnhandledException(args.Exception);
AppDomain.CurrentDomain.UnhandledException += (sender, args) => DispatcherOnUnhandledException((Exception) args.ExceptionObject);
TaskScheduler.UnobservedTaskException += (sender, args) => DispatcherOnUnhandledException(args.Exception);
}
private static void DispatcherOnUnhandledException(Exception e)
{
#if RELEASE
if (!(e is NullReferenceException))
{
if (e is ApiException apiException)
{
ExceptionLogger.WriteException(apiException);
return;
}
ExceptionLogger.WriteException(e);
}
#elif DEBUG
if (e is ApiException apiException) MessageBox.Show(apiException.Content);
#endif
}
protected override async void OnStartup(StartupEventArgs e)
{
await Settings.Global.Restore();
base.OnStartup(e);
}
protected override async void OnExit(ExitEventArgs e)
{
await Settings.Global.Store();
if (!PixevalEnvironment.LogoutExit && Identity.Global.AccessToken != null) await Identity.Global.Store();
base.OnExit(e);
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/yinghualuowu/Pixeval.git
git@gitee.com:yinghualuowu/Pixeval.git
yinghualuowu
Pixeval
Pixeval
master

搜索帮助