1
0
mirror of https://github.com/bitwarden/mobile synced 2025-12-30 07:03:48 +00:00

PM-3350 Improved code safety adding a lot of try...catch and logging throughout the app. Also made the invoking on main thread safer on several places of the app. Additionally, on the GroupingsPageViewModel changed the code removing the old Xamarin hack and just using Replace directly instead of Clearing first to see if that fixes the crash we're having sometimes on the app.

This commit is contained in:
Federico Maccaroni
2024-01-12 13:54:34 -03:00
parent 27fa79e0bd
commit 1949a450fd
20 changed files with 745 additions and 512 deletions

View File

@@ -204,7 +204,18 @@ namespace Bit.iOS.Core.Controllers
var tasks = Task.Run(async () =>
{
await Task.Delay(500);
NSRunLoop.Main.BeginInvokeOnMainThread(async () => await PromptBiometricAsync());
NSRunLoop.Main.BeginInvokeOnMainThread(async () =>
{
try
{
await PromptBiometricAsync();
}
catch (Exception ex)
{
LoggerHelper.LogEvenIfCantBeResolved(ex);
throw;
}
});
});
}
}

View File

@@ -31,7 +31,7 @@ namespace Bit.iOS.Core.Services
var dictArr = new NSDictionary<NSString, NSObject>[1];
dictArr[0] = new NSDictionary<NSString, NSObject>(new NSString(UTType.UTF8PlainText), new NSString(text));
Device.BeginInvokeOnMainThread(() => UIPasteboard.General.SetItems(dictArr, new UIPasteboardOptions
MainThread.BeginInvokeOnMainThread(() => UIPasteboard.General.SetItems(dictArr, new UIPasteboardOptions
{
LocalOnly = true,
ExpirationDate = clearSeconds > 0 ? NSDate.FromTimeIntervalSinceNow(clearSeconds) : null