mirror of
https://github.com/bitwarden/mobile
synced 2026-01-06 02:23:57 +00:00
added lock fingerprint page. added view for ios to hide app when backgrounded from multitask window.
This commit is contained in:
@@ -14,6 +14,11 @@ using Plugin.Settings;
|
||||
using Plugin.Connectivity;
|
||||
using Acr.UserDialogs;
|
||||
using Bit.App.Repositories;
|
||||
using Plugin.Fingerprint;
|
||||
using Plugin.Fingerprint.Abstractions;
|
||||
using Plugin.Settings.Abstractions;
|
||||
using System.Diagnostics;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace Bit.iOS
|
||||
{
|
||||
@@ -23,6 +28,8 @@ namespace Bit.iOS
|
||||
[Register("AppDelegate")]
|
||||
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
|
||||
{
|
||||
private App.App _app;
|
||||
|
||||
//
|
||||
// This method is invoked when the application has loaded and is ready to run. In this
|
||||
// method you should instantiate the window, load the UI into it and then make the window
|
||||
@@ -32,6 +39,8 @@ namespace Bit.iOS
|
||||
//
|
||||
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
|
||||
{
|
||||
CrossFingerprint.AllowReuse = false;
|
||||
|
||||
global::Xamarin.Forms.Forms.Init();
|
||||
|
||||
if(!Resolver.IsSet)
|
||||
@@ -39,11 +48,69 @@ namespace Bit.iOS
|
||||
SetIoc();
|
||||
}
|
||||
|
||||
LoadApplication(new App.App(Resolver.Resolve<IAuthService>(), Resolver.Resolve<IDatabaseService>()));
|
||||
_app = new App.App(
|
||||
Resolver.Resolve<IAuthService>(),
|
||||
Resolver.Resolve<IDatabaseService>(),
|
||||
Resolver.Resolve<IFingerprint>(),
|
||||
Resolver.Resolve<ISettings>());
|
||||
|
||||
LoadApplication(_app);
|
||||
|
||||
return base.FinishedLaunching(app, options);
|
||||
}
|
||||
|
||||
public override void DidEnterBackground(UIApplication uiApplication)
|
||||
{
|
||||
var colourView = new UIView(UIApplication.SharedApplication.KeyWindow.Frame)
|
||||
{
|
||||
BackgroundColor = UIColor.Black,
|
||||
Tag = 4321
|
||||
};
|
||||
UIApplication.SharedApplication.KeyWindow.AddSubview(colourView);
|
||||
UIApplication.SharedApplication.KeyWindow.BringSubviewToFront(colourView);
|
||||
|
||||
base.DidEnterBackground(uiApplication);
|
||||
Debug.WriteLine("DidEnterBackground");
|
||||
}
|
||||
|
||||
|
||||
public override void OnResignActivation(UIApplication uiApplication)
|
||||
{
|
||||
base.OnResignActivation(uiApplication);
|
||||
Debug.WriteLine("OnResignActivation");
|
||||
}
|
||||
|
||||
public override void WillTerminate(UIApplication uiApplication)
|
||||
{
|
||||
base.WillTerminate(uiApplication);
|
||||
Debug.WriteLine("WillTerminate");
|
||||
}
|
||||
|
||||
public override void OnActivated(UIApplication uiApplication)
|
||||
{
|
||||
base.OnActivated(uiApplication);
|
||||
Debug.WriteLine("OnActivated");
|
||||
|
||||
var view = UIApplication.SharedApplication.KeyWindow.ViewWithTag(4321);
|
||||
if(view != null)
|
||||
{
|
||||
view.RemoveFromSuperview();
|
||||
}
|
||||
}
|
||||
|
||||
public override void WillEnterForeground(UIApplication uiApplication)
|
||||
{
|
||||
SendLockMessage();
|
||||
base.WillEnterForeground(uiApplication);
|
||||
Debug.WriteLine("WillEnterForeground");
|
||||
}
|
||||
|
||||
private void SendLockMessage()
|
||||
{
|
||||
MessagingCenter.Send<App.App>(_app, "Lock");
|
||||
|
||||
}
|
||||
|
||||
private void SetIoc()
|
||||
{
|
||||
var container = new UnityContainer();
|
||||
@@ -68,7 +135,8 @@ namespace Bit.iOS
|
||||
// Other
|
||||
.RegisterInstance(CrossSettings.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossConnectivity.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(UserDialogs.Instance, new ContainerControlledLifetimeManager());
|
||||
.RegisterInstance(UserDialogs.Instance, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossFingerprint.Current, new ContainerControlledLifetimeManager());
|
||||
|
||||
Resolver.SetResolver(new UnityResolver(container));
|
||||
}
|
||||
|
||||
@@ -36,6 +36,11 @@
|
||||
<OptimizePNGs>True</OptimizePNGs>
|
||||
<MtouchFloat32>False</MtouchFloat32>
|
||||
<MtouchI18n />
|
||||
<CodesignKey>iPhone Developer</CodesignKey>
|
||||
<CodesignProvision />
|
||||
<CodesignEntitlements />
|
||||
<CodesignResourceRules />
|
||||
<CodesignExtraArgs />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
|
||||
<DebugType>none</DebugType>
|
||||
@@ -60,7 +65,8 @@
|
||||
<CodesignKey>iPhone Developer</CodesignKey>
|
||||
<MtouchDebug>true</MtouchDebug>
|
||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||
<CodesignProvision>2ae5608a-6142-4e1d-9344-326d1982b392</CodesignProvision>
|
||||
<CodesignProvision>
|
||||
</CodesignProvision>
|
||||
<CodesignResourceRules />
|
||||
<CodesignExtraArgs />
|
||||
</PropertyGroup>
|
||||
@@ -174,6 +180,14 @@
|
||||
<HintPath>..\..\packages\Xam.Plugin.Connectivity.2.1.2\lib\Xamarin.iOS10\Plugin.Connectivity.Abstractions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Plugin.Fingerprint, Version=1.1.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Plugin.Fingerprint.1.1.1-beta\lib\Xamarin.iOS10\Plugin.Fingerprint.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Plugin.Fingerprint.Abstractions, Version=1.1.1.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Plugin.Fingerprint.1.1.1-beta\lib\Xamarin.iOS10\Plugin.Fingerprint.Abstractions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Plugin.Settings, Version=2.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Xam.Plugins.Settings.2.1.0\lib\Xamarin.iOS10\Plugin.Settings.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
<package id="Acr.UserDialogs" version="5.0.1" targetFramework="xamarinios10" />
|
||||
<package id="CommonServiceLocator" version="1.3" targetFramework="xamarinios10" />
|
||||
<package id="modernhttpclient" version="2.4.2" targetFramework="xamarinios10" />
|
||||
<package id="Plugin.Fingerprint" version="1.1.1-beta" targetFramework="xamarinios10" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="xamarinios10" />
|
||||
<package id="sqlite-net-pcl" version="1.1.1" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCL.raw" version="0.8.6" targetFramework="xamarinios10" />
|
||||
|
||||
Reference in New Issue
Block a user