Added null checks for iOS crash OnActivated on KeyWindow (#1856)

This commit is contained in:
Federico Maccaroni 2022-03-21 12:34:22 -03:00 committed by GitHub
parent fdcb2d76c9
commit 840925c479
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -24,6 +24,8 @@ namespace Bit.iOS
[Register("AppDelegate")] [Register("AppDelegate")]
public partial class AppDelegate : FormsApplicationDelegate public partial class AppDelegate : FormsApplicationDelegate
{ {
const int SPLASH_VIEW_TAG = 4321;
private NFCNdefReaderSession _nfcSession = null; private NFCNdefReaderSession _nfcSession = null;
private iOSPushNotificationHandler _pushHandler = null; private iOSPushNotificationHandler _pushHandler = null;
private Core.NFCReaderDelegate _nfcDelegate = null; private Core.NFCReaderDelegate _nfcDelegate = null;
@ -175,7 +177,7 @@ namespace Bit.iOS
{ {
var view = new UIView(UIApplication.SharedApplication.KeyWindow.Frame) var view = new UIView(UIApplication.SharedApplication.KeyWindow.Frame)
{ {
Tag = 4321 Tag = SPLASH_VIEW_TAG
}; };
var backgroundView = new UIView(UIApplication.SharedApplication.KeyWindow.Frame) var backgroundView = new UIView(UIApplication.SharedApplication.KeyWindow.Frame)
{ {
@ -205,11 +207,9 @@ namespace Bit.iOS
{ {
base.OnActivated(uiApplication); base.OnActivated(uiApplication);
UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0; UIApplication.SharedApplication.ApplicationIconBadgeNumber = 0;
var view = UIApplication.SharedApplication.KeyWindow.ViewWithTag(4321); UIApplication.SharedApplication.KeyWindow?
if (view != null) .ViewWithTag(SPLASH_VIEW_TAG)?
{ .RemoveFromSuperview();
view.RemoveFromSuperview();
}
ThemeManager.UpdateThemeOnPagesAsync(); ThemeManager.UpdateThemeOnPagesAsync();
} }