mirror of
https://github.com/leiurayer/downkyi.git
synced 2024-04-21 12:41:55 +00:00
修复登录返回后闪退的问题
This commit is contained in:
@@ -90,7 +90,7 @@ namespace DownKyi.Core.Storage
|
||||
};
|
||||
coverDb.Update(newCover);
|
||||
|
||||
coverDb.Close();
|
||||
//coverDb.Close();
|
||||
return $"{StorageManager.GetCover()}/{cover.Md5}";
|
||||
}
|
||||
else
|
||||
@@ -108,12 +108,12 @@ namespace DownKyi.Core.Storage
|
||||
};
|
||||
coverDb.Update(newCover);
|
||||
|
||||
coverDb.Close();
|
||||
//coverDb.Close();
|
||||
return $"{StorageManager.GetCover()}/{md5}";
|
||||
}
|
||||
else
|
||||
{
|
||||
coverDb.Close();
|
||||
//coverDb.Close();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -133,12 +133,12 @@ namespace DownKyi.Core.Storage
|
||||
};
|
||||
coverDb.Insert(newCover);
|
||||
|
||||
coverDb.Close();
|
||||
//coverDb.Close();
|
||||
return $"{StorageManager.GetCover()}/{md5}";
|
||||
}
|
||||
else
|
||||
{
|
||||
coverDb.Close();
|
||||
//coverDb.Close();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ namespace DownKyi.Core.Storage
|
||||
Md5 = header.Md5
|
||||
};
|
||||
headerDb.Update(newHeader);
|
||||
headerDb.Close();
|
||||
//headerDb.Close();
|
||||
return $"{StorageManager.GetHeader()}/{header.Md5}";
|
||||
}
|
||||
else
|
||||
@@ -89,12 +89,12 @@ namespace DownKyi.Core.Storage
|
||||
Md5 = md5
|
||||
};
|
||||
headerDb.Insert(newHeader);
|
||||
headerDb.Close();
|
||||
//headerDb.Close();
|
||||
return $"{StorageManager.GetHeader()}/{md5}";
|
||||
}
|
||||
else
|
||||
{
|
||||
headerDb.Close();
|
||||
//headerDb.Close();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -112,12 +112,12 @@ namespace DownKyi.Core.Storage
|
||||
Md5 = md5
|
||||
};
|
||||
headerDb.Insert(newHeader);
|
||||
headerDb.Close();
|
||||
//headerDb.Close();
|
||||
return $"{StorageManager.GetHeader()}/{md5}";
|
||||
}
|
||||
else
|
||||
{
|
||||
headerDb.Close();
|
||||
//headerDb.Close();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -227,65 +227,73 @@ namespace DownKyi.ViewModels
|
||||
/// </summary>
|
||||
private async void UpdateUserInfo()
|
||||
{
|
||||
LoginPanelVisibility = Visibility.Hidden;
|
||||
|
||||
// 检查本地是否存在login文件,没有则说明未登录
|
||||
if (!File.Exists(StorageManager.GetLogin()))
|
||||
try
|
||||
{
|
||||
LoginPanelVisibility = Visibility.Visible;
|
||||
Header = new BitmapImage(new Uri("pack://application:,,,/Resources/default_header.jpg"));
|
||||
UserName = null;
|
||||
return;
|
||||
}
|
||||
LoginPanelVisibility = Visibility.Hidden;
|
||||
|
||||
await Task.Run(new Action(() =>
|
||||
{
|
||||
// 获取用户信息
|
||||
var userInfo = UserInfo.GetUserInfoForNavigation();
|
||||
if (userInfo != null)
|
||||
{
|
||||
SettingsManager.GetInstance().SetUserInfo(new UserInfoSettings
|
||||
{
|
||||
Mid = userInfo.Mid,
|
||||
Name = userInfo.Name,
|
||||
IsLogin = userInfo.IsLogin,
|
||||
IsVip = userInfo.VipStatus == 1
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
SettingsManager.GetInstance().SetUserInfo(new UserInfoSettings
|
||||
{
|
||||
Mid = -1,
|
||||
Name = "",
|
||||
IsLogin = false,
|
||||
IsVip = false
|
||||
});
|
||||
}
|
||||
|
||||
PropertyChangeAsync(new Action(() =>
|
||||
// 检查本地是否存在login文件,没有则说明未登录
|
||||
if (!File.Exists(StorageManager.GetLogin()))
|
||||
{
|
||||
LoginPanelVisibility = Visibility.Visible;
|
||||
Header = new BitmapImage(new Uri("pack://application:,,,/Resources/default_header.jpg"));
|
||||
UserName = null;
|
||||
return;
|
||||
}
|
||||
|
||||
await Task.Run(new Action(() =>
|
||||
{
|
||||
// 获取用户信息
|
||||
var userInfo = UserInfo.GetUserInfoForNavigation();
|
||||
if (userInfo != null)
|
||||
{
|
||||
if (userInfo.Face != null)
|
||||
SettingsManager.GetInstance().SetUserInfo(new UserInfoSettings
|
||||
{
|
||||
Header = new StorageHeader().GetHeaderThumbnail(userInfo.Mid, userInfo.Name, userInfo.Face, 36, 36);
|
||||
Mid = userInfo.Mid,
|
||||
Name = userInfo.Name,
|
||||
IsLogin = userInfo.IsLogin,
|
||||
IsVip = userInfo.VipStatus == 1
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
SettingsManager.GetInstance().SetUserInfo(new UserInfoSettings
|
||||
{
|
||||
Mid = -1,
|
||||
Name = "",
|
||||
IsLogin = false,
|
||||
IsVip = false
|
||||
});
|
||||
}
|
||||
|
||||
PropertyChangeAsync(new Action(() =>
|
||||
{
|
||||
LoginPanelVisibility = Visibility.Visible;
|
||||
|
||||
if (userInfo != null)
|
||||
{
|
||||
if (userInfo.Face != null)
|
||||
{
|
||||
Header = new StorageHeader().GetHeaderThumbnail(userInfo.Mid, userInfo.Name, userInfo.Face, 36, 36);
|
||||
}
|
||||
else
|
||||
{
|
||||
Header = new BitmapImage(new Uri("pack://application:,,,/Resources/default_header.jpg"));
|
||||
}
|
||||
UserName = userInfo.Name;
|
||||
}
|
||||
else
|
||||
{
|
||||
Header = new BitmapImage(new Uri("pack://application:,,,/Resources/default_header.jpg"));
|
||||
UserName = null;
|
||||
}
|
||||
UserName = userInfo.Name;
|
||||
}
|
||||
else
|
||||
{
|
||||
Header = new BitmapImage(new Uri("pack://application:,,,/Resources/default_header.jpg"));
|
||||
UserName = null;
|
||||
}
|
||||
}));
|
||||
}));
|
||||
}));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Core.Utils.Debugging.Console.PrintLine("UpdateUserInfo()发生异常: {0}", e);
|
||||
LogManager.Error(Tag, e);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -98,26 +98,34 @@ namespace DownKyi.ViewModels
|
||||
/// </summary>
|
||||
private void Login()
|
||||
{
|
||||
var loginUrl = LoginQR.GetLoginUrl();
|
||||
if (loginUrl == null) { return; }
|
||||
|
||||
if (loginUrl.Status != true)
|
||||
try
|
||||
{
|
||||
ExecuteBackSpace();
|
||||
return;
|
||||
}
|
||||
var loginUrl = LoginQR.GetLoginUrl();
|
||||
if (loginUrl == null) { return; }
|
||||
|
||||
if (loginUrl.Data == null || loginUrl.Data.Url == null)
|
||||
if (loginUrl.Status != true)
|
||||
{
|
||||
ExecuteBackSpace();
|
||||
return;
|
||||
}
|
||||
|
||||
if (loginUrl.Data == null || loginUrl.Data.Url == null)
|
||||
{
|
||||
eventAggregator.GetEvent<MessageEvent>().Publish(DictionaryResource.GetString("GetLoginUrlFailed"));
|
||||
return;
|
||||
}
|
||||
|
||||
PropertyChangeAsync(new Action(() => { LoginQRCode = LoginQR.GetLoginQRCode(loginUrl.Data.Url); }));
|
||||
Core.Utils.Debugging.Console.PrintLine(loginUrl.Data.Url + "\n");
|
||||
LogManager.Debug(Tag, loginUrl.Data.Url);
|
||||
|
||||
GetLoginStatus(loginUrl.Data.OauthKey);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
eventAggregator.GetEvent<MessageEvent>().Publish(DictionaryResource.GetString("GetLoginUrlFailed"));
|
||||
return;
|
||||
Core.Utils.Debugging.Console.PrintLine("Login()发生异常: {0}", e);
|
||||
LogManager.Error(Tag, e);
|
||||
}
|
||||
|
||||
PropertyChangeAsync(new Action(() => { LoginQRCode = LoginQR.GetLoginQRCode(loginUrl.Data.Url); }));
|
||||
Core.Utils.Debugging.Console.PrintLine(loginUrl.Data.Url + "\n");
|
||||
LogManager.Debug(Tag, loginUrl.Data.Url);
|
||||
|
||||
GetLoginStatus(loginUrl.Data.OauthKey);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user