1
0
mirror of https://github.com/bitwarden/mobile synced 2025-12-17 08:43:21 +00:00

Lock Screen Fixes

- Move settings to AppSettingsService
- Update activity on page disappaearing
- Always check if app is currently locked before updating last activity
date
This commit is contained in:
Kyle Spearrin
2017-04-28 11:07:26 -04:00
parent be47bb7263
commit 01736ca685
13 changed files with 102 additions and 23 deletions

View File

@@ -33,6 +33,7 @@ namespace Bit.iOS
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
private GaiCompletionHandler _dispatchHandler = null;
private ILockService _lockService;
public ISettings Settings { get; set; }
@@ -45,6 +46,7 @@ namespace Bit.iOS
SetIoc();
}
_lockService = Resolver.Resolve<ILockService>();
var appIdService = Resolver.Resolve<IAppIdService>();
var crashManagerDelegate = new HockeyAppCrashManagerDelegate(
appIdService, Resolver.Resolve<IAuthService>());
@@ -65,10 +67,11 @@ namespace Bit.iOS
Resolver.Resolve<ISyncService>(),
Resolver.Resolve<IFingerprint>(),
Resolver.Resolve<ISettings>(),
Resolver.Resolve<ILockService>(),
_lockService,
Resolver.Resolve<IGoogleAnalyticsService>(),
Resolver.Resolve<ILocalizeService>(),
Resolver.Resolve<IAppInfoService>()));
Resolver.Resolve<IAppInfoService>(),
Resolver.Resolve<IAppSettingsService>()));
// Appearance stuff
@@ -143,7 +146,7 @@ namespace Bit.iOS
UIApplication.SharedApplication.SetStatusBarHidden(true, false);
// Log the date/time we last backgrounded
Settings.AddOrUpdateValue(App.Constants.LastActivityDate, DateTime.UtcNow);
_lockService.UpdateLastActivity();
// Dispatch Google Analytics
SendGoogleAnalyticsHitsInBackground();
@@ -268,6 +271,7 @@ namespace Bit.iOS
.RegisterType<IHttpService, HttpService>(new ContainerControlledLifetimeManager())
.RegisterType<ITokenService, TokenService>(new ContainerControlledLifetimeManager())
.RegisterType<ISettingsService, SettingsService>(new ContainerControlledLifetimeManager())
.RegisterType<IAppSettingsService, AppSettingsService>(new ContainerControlledLifetimeManager())
// Repositories
.RegisterType<IFolderRepository, FolderRepository>(new ContainerControlledLifetimeManager())
.RegisterType<IFolderApiRepository, FolderApiRepository>(new ContainerControlledLifetimeManager())