mirror of
https://github.com/bitwarden/mobile.git
synced 2024-11-21 11:25:56 +01:00
simple injector instead of unity
This commit is contained in:
parent
b063aae130
commit
46fc2dd8d0
@ -114,10 +114,6 @@
|
||||
<HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Practices.Unity, Version=3.5.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Unity.3.5.1405-prerelease\lib\portable-net45+wp80+win8+wpa81+MonoAndroid10+MonoTouch10\Microsoft.Practices.Unity.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Android" />
|
||||
<Reference Include="mscorlib" />
|
||||
<Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
@ -176,6 +172,9 @@
|
||||
<HintPath>..\..\packages\Xam.Plugin.PushNotification.1.2.4\lib\MonoAndroid10\PushNotification.Plugin.Abstractions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="SimpleInjector, Version=4.0.7.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\SimpleInjector.4.0.7\lib\netstandard1.3\SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Splat, Version=1.6.2.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Splat.1.6.2\lib\monoandroid\Splat.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@ -218,6 +217,7 @@
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="Validation, Version=2.3.0.0, Culture=neutral, PublicKeyToken=2fc06f0d701809a7, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Validation.2.3.7\lib\dotnet\Validation.dll</HintPath>
|
||||
@ -291,9 +291,8 @@
|
||||
<HintPath>..\..\packages\XLabs.IoC.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="XLabs.Ioc.Unity, Version=2.0.5782.12230, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\XLabs.IoC.Unity.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.Unity.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
<Reference Include="XLabs.Ioc.SimpleInjector, Version=2.0.5782.12229, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\XLabs.IoC.SimpleInjector.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
@ -8,7 +8,6 @@ using Bit.Android.Services;
|
||||
using Bit.App.Abstractions;
|
||||
using Bit.App.Repositories;
|
||||
using Bit.App.Services;
|
||||
using Microsoft.Practices.Unity;
|
||||
using Plugin.Connectivity;
|
||||
using Plugin.CurrentActivity;
|
||||
using Plugin.Fingerprint;
|
||||
@ -16,11 +15,11 @@ using Plugin.Settings;
|
||||
using PushNotification.Plugin;
|
||||
using PushNotification.Plugin.Abstractions;
|
||||
using XLabs.Ioc;
|
||||
using XLabs.Ioc.Unity;
|
||||
using System.Threading.Tasks;
|
||||
using Plugin.Settings.Abstractions;
|
||||
using Xamarin.Android.Net;
|
||||
using FFImageLoading.Forms.Droid;
|
||||
using XLabs.Ioc.SimpleInjectorContainer;
|
||||
using SimpleInjector;
|
||||
|
||||
namespace Bit.Android
|
||||
{
|
||||
@ -179,62 +178,68 @@ namespace Bit.Android
|
||||
public static void SetIoc(Application application)
|
||||
{
|
||||
UserDialogs.Init(application);
|
||||
|
||||
var container = new UnityContainer();
|
||||
|
||||
container
|
||||
// Android Stuff
|
||||
.RegisterInstance(application.ApplicationContext)
|
||||
.RegisterInstance<Application>(application)
|
||||
// Services
|
||||
.RegisterType<IDatabaseService, DatabaseService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISqlService, SqlService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISecureStorageService, KeyStoreBackedStorageService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ICryptoService, CryptoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IKeyDerivationService, BouncyCastleKeyDerivationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAuthService, AuthService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IFolderService, FolderService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginService, LoginService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISyncService, SyncService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IClipboardService, ClipboardService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IPushNotificationListener, PushNotificationListener>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppIdService, AppIdService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IPasswordGenerationService, PasswordGenerationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IReflectionService, ReflectionService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILockService, LockService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppInfoService, AppInfoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IGoogleAnalyticsService, GoogleAnalyticsService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IDeviceInfoService, DeviceInfoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILocalizeService, LocalizeService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILogService, LogService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IHttpService, HttpService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ITokenService, TokenService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsService, SettingsService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IMemoryService, MemoryService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppSettingsService, AppSettingsService>(new ContainerControlledLifetimeManager())
|
||||
// Repositories
|
||||
.RegisterType<IFolderRepository, FolderRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IFolderApiRepository, FolderApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginRepository, LoginRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginApiRepository, LoginApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IConnectApiRepository, ConnectApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IDeviceApiRepository, DeviceApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAccountsApiRepository, AccountsApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ICipherApiRepository, CipherApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsRepository, SettingsRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsApiRepository, SettingsApiRepository>(new ContainerControlledLifetimeManager())
|
||||
// Other
|
||||
.RegisterInstance(CrossSettings.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossConnectivity.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(UserDialogs.Instance, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossFingerprint.Current, new ContainerControlledLifetimeManager());
|
||||
|
||||
CrossPushNotification.Initialize(container.Resolve<IPushNotificationListener>(), "962181367620");
|
||||
container.RegisterInstance(CrossPushNotification.Current, new ContainerControlledLifetimeManager());
|
||||
CachedImageRenderer.Init();
|
||||
|
||||
Resolver.SetResolver(new UnityResolver(container));
|
||||
CrossFingerprint.SetCurrentActivityResolver(() => CrossCurrentActivity.Current.Activity);
|
||||
|
||||
//var container = new UnityContainer();
|
||||
var container = new Container();
|
||||
|
||||
// Android Stuff
|
||||
container.RegisterSingleton(application.ApplicationContext);
|
||||
container.RegisterSingleton<Application>(application);
|
||||
|
||||
// Services
|
||||
container.RegisterSingleton<IDatabaseService, DatabaseService>();
|
||||
container.RegisterSingleton<ISqlService, SqlService>();
|
||||
container.RegisterSingleton<ISecureStorageService, KeyStoreBackedStorageService>();
|
||||
container.RegisterSingleton<ICryptoService, CryptoService>();
|
||||
container.RegisterSingleton<IKeyDerivationService, BouncyCastleKeyDerivationService>();
|
||||
container.RegisterSingleton<IAuthService, AuthService>();
|
||||
container.RegisterSingleton<IFolderService, FolderService>();
|
||||
container.RegisterSingleton<ILoginService, LoginService>();
|
||||
container.RegisterSingleton<ISyncService, SyncService>();
|
||||
container.RegisterSingleton<IClipboardService, ClipboardService>();
|
||||
container.RegisterSingleton<IAppIdService, AppIdService>();
|
||||
container.RegisterSingleton<IPasswordGenerationService, PasswordGenerationService>();
|
||||
container.RegisterSingleton<IReflectionService, ReflectionService>();
|
||||
container.RegisterSingleton<ILockService, LockService>();
|
||||
container.RegisterSingleton<IAppInfoService, AppInfoService>();
|
||||
container.RegisterSingleton<IGoogleAnalyticsService, GoogleAnalyticsService>();
|
||||
container.RegisterSingleton<IDeviceInfoService, DeviceInfoService>();
|
||||
container.RegisterSingleton<ILocalizeService, LocalizeService>();
|
||||
container.RegisterSingleton<ILogService, LogService>();
|
||||
container.RegisterSingleton<IHttpService, HttpService>();
|
||||
container.RegisterSingleton<ITokenService, TokenService>();
|
||||
container.RegisterSingleton<ISettingsService, SettingsService>();
|
||||
container.RegisterSingleton<IMemoryService, MemoryService>();
|
||||
container.RegisterSingleton<IAppSettingsService, AppSettingsService>();
|
||||
|
||||
// Repositories
|
||||
container.RegisterSingleton<IFolderRepository, FolderRepository>();
|
||||
container.RegisterSingleton<IFolderApiRepository, FolderApiRepository>();
|
||||
container.RegisterSingleton<ILoginRepository, LoginRepository>();
|
||||
container.RegisterSingleton<ILoginApiRepository, LoginApiRepository>();
|
||||
container.RegisterSingleton<IConnectApiRepository, ConnectApiRepository>();
|
||||
container.RegisterSingleton<IDeviceApiRepository, DeviceApiRepository>();
|
||||
container.RegisterSingleton<IAccountsApiRepository, AccountsApiRepository>();
|
||||
container.RegisterSingleton<ICipherApiRepository, CipherApiRepository>();
|
||||
container.RegisterSingleton<ISettingsRepository, SettingsRepository>();
|
||||
container.RegisterSingleton<ISettingsApiRepository, SettingsApiRepository>();
|
||||
|
||||
// Other
|
||||
container.RegisterSingleton(CrossSettings.Current);
|
||||
container.RegisterSingleton(CrossConnectivity.Current);
|
||||
container.RegisterSingleton(UserDialogs.Instance);
|
||||
container.RegisterSingleton(CrossFingerprint.Current);
|
||||
|
||||
// Push
|
||||
var pushListener = new PushNotificationListener();
|
||||
container.RegisterSingleton<IPushNotificationListener>(pushListener);
|
||||
CrossPushNotification.Initialize(pushListener, "962181367620");
|
||||
container.RegisterSingleton(CrossPushNotification.Current);
|
||||
|
||||
container.Verify();
|
||||
Resolver.SetResolver(new SimpleInjectorResolver(container));
|
||||
}
|
||||
}
|
||||
}
|
@ -10,6 +10,10 @@
|
||||
<assemblyIdentity name="Validation" publicKeyToken="2fc06f0d701809a7" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.7.0" newVersion="4.0.7.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -6,6 +6,9 @@
|
||||
<package id="BouncyCastle" version="1.8.1" targetFramework="monoandroid60" />
|
||||
<package id="CommonServiceLocator" version="1.3" targetFramework="monoandroid60" />
|
||||
<package id="HockeySDK.Xamarin" version="4.1.2" targetFramework="monoandroid71" />
|
||||
<package id="Microsoft.NETCore.Platforms" version="1.0.1" targetFramework="monoandroid71" />
|
||||
<package id="Microsoft.Win32.Primitives" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="NETStandard.Library" version="1.6.0" targetFramework="monoandroid71" />
|
||||
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="monoandroid60" />
|
||||
<package id="PCLCrypto" version="2.0.147" targetFramework="monoandroid60" />
|
||||
<package id="PInvoke.BCrypt" version="0.3.152" targetFramework="monoandroid60" />
|
||||
@ -14,6 +17,7 @@
|
||||
<package id="PInvoke.Windows.Core" version="0.3.152" targetFramework="monoandroid60" />
|
||||
<package id="Plugin.CurrentActivity" version="1.0.1" targetFramework="monoandroid60" />
|
||||
<package id="Plugin.Fingerprint" version="1.2.0" targetFramework="monoandroid60" />
|
||||
<package id="SimpleInjector" version="4.0.7" targetFramework="monoandroid71" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="monoandroid60" />
|
||||
<package id="sqlite-net-pcl" version="1.2.1" targetFramework="monoandroid60" />
|
||||
<package id="SQLitePCL.bundle_green" version="0.9.3" targetFramework="monoandroid60" />
|
||||
@ -23,7 +27,49 @@
|
||||
<package id="SQLitePCLRaw.core" version="1.1.2" targetFramework="monoandroid60" />
|
||||
<package id="SQLitePCLRaw.lib.e_sqlite3.android" version="1.1.2" targetFramework="monoandroid60" />
|
||||
<package id="SQLitePCLRaw.provider.e_sqlite3.android" version="1.1.2" targetFramework="monoandroid60" />
|
||||
<package id="Unity" version="3.5.1405-prerelease" targetFramework="monoandroid60" />
|
||||
<package id="System.AppContext" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Collections" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Collections.Concurrent" version="4.0.12" targetFramework="monoandroid71" />
|
||||
<package id="System.ComponentModel" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Console" version="4.0.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Diagnostics.Debug" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Diagnostics.Tools" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Diagnostics.Tracing" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Globalization" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Globalization.Calendars" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.IO" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.IO.Compression" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.IO.Compression.ZipFile" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.IO.FileSystem" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Linq" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Linq.Expressions" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Net.Http" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Net.Primitives" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Net.Sockets" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.ObjectModel" version="4.0.12" targetFramework="monoandroid71" />
|
||||
<package id="System.Reflection" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Reflection.Extensions" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Reflection.Primitives" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Resources.ResourceManager" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime.Extensions" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime.Handles" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime.InteropServices" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.0.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Runtime.Numerics" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Security.Cryptography.Algorithms" version="4.2.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Security.Cryptography.Encoding" version="4.0.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Security.Cryptography.Primitives" version="4.0.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Security.Cryptography.X509Certificates" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Text.Encoding" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Text.Encoding.Extensions" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Text.RegularExpressions" version="4.1.0" targetFramework="monoandroid71" />
|
||||
<package id="System.Threading" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Threading.Tasks" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Threading.Timer" version="4.0.1" targetFramework="monoandroid71" />
|
||||
<package id="System.Xml.ReaderWriter" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="System.Xml.XDocument" version="4.0.11" targetFramework="monoandroid71" />
|
||||
<package id="Validation" version="2.3.7" targetFramework="monoandroid60" />
|
||||
<package id="Xam.Plugin.Connectivity" version="2.3.0" targetFramework="monoandroid71" />
|
||||
<package id="Xam.Plugin.PushNotification" version="1.2.4" targetFramework="monoandroid60" developmentDependency="true" />
|
||||
@ -45,5 +91,5 @@
|
||||
<package id="Xamarin.GooglePlayServices.Gcm" version="29.0.0.2" targetFramework="monoandroid60" />
|
||||
<package id="Xamarin.GooglePlayServices.Measurement" version="29.0.0.2" targetFramework="monoandroid60" />
|
||||
<package id="XLabs.IoC" version="2.0.5782" targetFramework="monoandroid60" />
|
||||
<package id="XLabs.IoC.Unity" version="2.0.5782" targetFramework="monoandroid60" />
|
||||
<package id="XLabs.IoC.SimpleInjector" version="2.0.5782" targetFramework="monoandroid71" />
|
||||
</packages>
|
@ -368,10 +368,6 @@
|
||||
<HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Practices.Unity, Version=3.5.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Unity.3.5.1405-prerelease\lib\portable-net45+wp80+win8+wpa81+MonoAndroid10+MonoTouch10\Microsoft.Practices.Unity.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Android">
|
||||
<HintPath>..\..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\Mono.Android.dll</HintPath>
|
||||
</Reference>
|
||||
|
@ -20,7 +20,7 @@ namespace Bit.App
|
||||
private void Init()
|
||||
{
|
||||
//BaseAddress = new Uri("http://169.254.80.80:4000"); // Desktop from VS Android Emulator
|
||||
//BaseAddress = new Uri("http://192.168.1.8:4000"); // Desktop
|
||||
//BaseAddress = new Uri("http://192.168.1.6:4000"); // Desktop
|
||||
//BaseAddress = new Uri("https://preview-api.bitwarden.com"); // Preview
|
||||
BaseAddress = new Uri("https://api.bitwarden.com"); // Production
|
||||
DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||
|
@ -20,7 +20,7 @@ namespace Bit.App
|
||||
private void Init()
|
||||
{
|
||||
//BaseAddress = new Uri("http://169.254.80.80:33656"); // Desktop from VS Android Emulator
|
||||
//BaseAddress = new Uri("http://192.168.1.8:33656"); // Desktop
|
||||
//BaseAddress = new Uri("http://192.168.1.6:33656"); // Desktop
|
||||
//BaseAddress = new Uri("https://identity-api.bitwarden.com"); // Preview
|
||||
BaseAddress = new Uri("https://identity.bitwarden.com"); // Production
|
||||
DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||
|
@ -16,7 +16,6 @@
|
||||
<package id="SQLitePCL.raw" version="0.9.3" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="SQLitePCLRaw.bundle_green" version="1.1.2" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="SQLitePCLRaw.core" version="1.1.2" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="Unity" version="3.5.1405-prerelease" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="Validation" version="2.3.7" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="Xam.Plugin.Connectivity" version="2.3.0" targetFramework="portable45-net45+win8+wpa81" />
|
||||
<package id="Xam.Plugin.PushNotification" version="1.2.4" targetFramework="portable45-net45+win8+wpa81" developmentDependency="true" />
|
||||
|
@ -6,10 +6,8 @@ using Bit.App.Repositories;
|
||||
using Bit.App.Services;
|
||||
using Bit.iOS.Core.Services;
|
||||
using Foundation;
|
||||
using Microsoft.Practices.Unity;
|
||||
using UIKit;
|
||||
using XLabs.Ioc;
|
||||
using XLabs.Ioc.Unity;
|
||||
using Bit.iOS.Core;
|
||||
using Newtonsoft.Json;
|
||||
using Bit.iOS.Extension.Models;
|
||||
@ -20,6 +18,8 @@ using Plugin.Fingerprint;
|
||||
using Bit.iOS.Core.Utilities;
|
||||
using Bit.App.Resources;
|
||||
using Bit.iOS.Core.Controllers;
|
||||
using SimpleInjector;
|
||||
using XLabs.Ioc.SimpleInjectorContainer;
|
||||
|
||||
namespace Bit.iOS.Extension
|
||||
{
|
||||
@ -260,46 +260,47 @@ namespace Bit.iOS.Extension
|
||||
|
||||
private void SetIoc()
|
||||
{
|
||||
var container = new UnityContainer();
|
||||
var container = new Container();
|
||||
|
||||
container
|
||||
// Services
|
||||
.RegisterType<IDatabaseService, DatabaseService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISqlService, SqlService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISecureStorageService, KeyChainStorageService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ICryptoService, CryptoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IKeyDerivationService, CommonCryptoKeyDerivationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAuthService, AuthService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IFolderService, FolderService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginService, LoginService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISyncService, SyncService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IPasswordGenerationService, PasswordGenerationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppIdService, AppIdService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILockService, LockService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IGoogleAnalyticsService, GoogleAnalyticsService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILocalizeService, LocalizeService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILogService, LogService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IHttpService, HttpService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ITokenService, TokenService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsService, SettingsService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IDeviceInfoService, DeviceInfoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppSettingsService, AppSettingsService>(new ContainerControlledLifetimeManager())
|
||||
// Repositories
|
||||
.RegisterType<IFolderRepository, FolderRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IFolderApiRepository, FolderApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginRepository, LoginRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginApiRepository, LoginApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IConnectApiRepository, ConnectApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsRepository, SettingsRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAccountsApiRepository, AccountsApiRepository>(new ContainerControlledLifetimeManager())
|
||||
// Other
|
||||
.RegisterInstance(CrossConnectivity.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossFingerprint.Current, new ContainerControlledLifetimeManager());
|
||||
// Services
|
||||
container.RegisterSingleton<IDatabaseService, DatabaseService>();
|
||||
container.RegisterSingleton<ISqlService, SqlService>();
|
||||
container.RegisterSingleton<ISecureStorageService, KeyChainStorageService>();
|
||||
container.RegisterSingleton<ICryptoService, CryptoService>();
|
||||
container.RegisterSingleton<IKeyDerivationService, CommonCryptoKeyDerivationService>();
|
||||
container.RegisterSingleton<IAuthService, AuthService>();
|
||||
container.RegisterSingleton<IFolderService, FolderService>();
|
||||
container.RegisterSingleton<ILoginService, LoginService>();
|
||||
container.RegisterSingleton<ISyncService, SyncService>();
|
||||
container.RegisterSingleton<IPasswordGenerationService, PasswordGenerationService>();
|
||||
container.RegisterSingleton<IAppIdService, AppIdService>();
|
||||
container.RegisterSingleton<ILockService, LockService>();
|
||||
container.RegisterSingleton<IGoogleAnalyticsService, GoogleAnalyticsService>();
|
||||
container.RegisterSingleton<ILocalizeService, LocalizeService>();
|
||||
container.RegisterSingleton<ILogService, LogService>();
|
||||
container.RegisterSingleton<IHttpService, HttpService>();
|
||||
container.RegisterSingleton<ITokenService, TokenService>();
|
||||
container.RegisterSingleton<ISettingsService, SettingsService>();
|
||||
container.RegisterSingleton<IDeviceInfoService, DeviceInfoService>();
|
||||
container.RegisterSingleton<IAppSettingsService, AppSettingsService>();
|
||||
|
||||
ISettings settings = new Settings("group.com.8bit.bitwarden");
|
||||
container.RegisterInstance(settings, new ContainerControlledLifetimeManager());
|
||||
// Repositories
|
||||
container.RegisterSingleton<IFolderRepository, FolderRepository>();
|
||||
container.RegisterSingleton<IFolderApiRepository, FolderApiRepository>();
|
||||
container.RegisterSingleton<ILoginRepository, LoginRepository>();
|
||||
container.RegisterSingleton<ILoginApiRepository, LoginApiRepository>();
|
||||
container.RegisterSingleton<IConnectApiRepository, ConnectApiRepository>();
|
||||
container.RegisterSingleton<ISettingsRepository, SettingsRepository>();
|
||||
container.RegisterSingleton<IAccountsApiRepository, AccountsApiRepository>();
|
||||
|
||||
Resolver.ResetResolver(new UnityResolver(container));
|
||||
// Other
|
||||
container.RegisterSingleton(CrossConnectivity.Current);
|
||||
container.RegisterSingleton(CrossFingerprint.Current);
|
||||
|
||||
var settings = new Settings("group.com.8bit.bitwarden");
|
||||
container.RegisterSingleton<ISettings>(settings);
|
||||
|
||||
Resolver.ResetResolver(new SimpleInjectorResolver(container));
|
||||
}
|
||||
|
||||
private void SetCulture()
|
||||
|
@ -10,6 +10,10 @@
|
||||
<assemblyIdentity name="Validation" publicKeyToken="2fc06f0d701809a7" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.7.0" newVersion="4.0.7.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -253,7 +253,9 @@
|
||||
<Compile Include="LoadingViewController.designer.cs">
|
||||
<DependentUpon>LoadingViewController.cs</DependentUpon>
|
||||
</Compile>
|
||||
<None Include="app.config" />
|
||||
<None Include="app.config">
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
<None Include="Info.plist" />
|
||||
<None Include="Entitlements.plist" />
|
||||
<Compile Include="Models\LoginViewModel.cs" />
|
||||
@ -321,6 +323,9 @@
|
||||
<Reference Include="Plugin.Settings.Abstractions, Version=2.5.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Xam.Plugins.Settings.2.5.4\lib\Xamarin.iOS10\Plugin.Settings.Abstractions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SimpleInjector, Version=4.0.7.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\SimpleInjector.4.0.7\lib\netstandard1.3\SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SQLite-net, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\sqlite-net-pcl.1.2.1\lib\portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\SQLite-net.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@ -351,6 +356,8 @@
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="Validation, Version=2.3.0.0, Culture=neutral, PublicKeyToken=2fc06f0d701809a7, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Validation.2.3.7\lib\dotnet\Validation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@ -359,14 +366,11 @@
|
||||
<Reference Include="Microsoft.Practices.ServiceLocation, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Practices.Unity, Version=3.5.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<HintPath>..\..\packages\Unity.3.5.1405-prerelease\lib\portable-net45+wp80+win8+wpa81+MonoAndroid10+MonoTouch10\Microsoft.Practices.Unity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="XLabs.Ioc, Version=2.0.5782.12218, Culture=neutral, PublicKeyToken=null">
|
||||
<HintPath>..\..\packages\XLabs.IoC.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="XLabs.Ioc.Unity, Version=2.0.5782.12230, Culture=neutral, PublicKeyToken=null">
|
||||
<HintPath>..\..\packages\XLabs.IoC.Unity.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.Unity.dll</HintPath>
|
||||
<Reference Include="XLabs.Ioc.SimpleInjector, Version=2.0.5782.12229, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\XLabs.IoC.SimpleInjector.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
@ -3,6 +3,9 @@
|
||||
<package id="Acr.Support" version="2.1.0" targetFramework="xamarinios10" />
|
||||
<package id="CommonServiceLocator" version="1.3" targetFramework="xamarinios10" />
|
||||
<package id="HockeySDK.Xamarin" version="4.1.2" targetFramework="xamarinios10" />
|
||||
<package id="Microsoft.NETCore.Platforms" version="1.0.1" targetFramework="xamarinios10" />
|
||||
<package id="Microsoft.Win32.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="NETStandard.Library" version="1.6.0" targetFramework="xamarinios10" />
|
||||
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="xamarinios10" />
|
||||
<package id="PCLCrypto" version="2.0.147" targetFramework="xamarinios10" />
|
||||
<package id="PInvoke.BCrypt" version="0.3.152" targetFramework="xamarinios10" />
|
||||
@ -10,18 +13,61 @@
|
||||
<package id="PInvoke.NCrypt" version="0.3.152" targetFramework="xamarinios10" />
|
||||
<package id="PInvoke.Windows.Core" version="0.3.152" targetFramework="xamarinios10" />
|
||||
<package id="Plugin.Fingerprint" version="1.2.0" targetFramework="xamarinios10" />
|
||||
<package id="SimpleInjector" version="4.0.7" targetFramework="xamarinios10" />
|
||||
<package id="sqlite-net-pcl" version="1.2.1" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCL.bundle_green" version="0.9.3" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCL.raw" version="0.9.3" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCLRaw.bundle_green" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCLRaw.core" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCLRaw.provider.sqlite3.ios_unified" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="Unity" version="3.5.1405-prerelease" targetFramework="xamarinios10" />
|
||||
<package id="System.AppContext" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Collections" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Collections.Concurrent" version="4.0.12" targetFramework="xamarinios10" />
|
||||
<package id="System.ComponentModel" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Console" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Debug" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Tools" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Tracing" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Globalization" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Globalization.Calendars" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.Compression" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.Compression.ZipFile" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.FileSystem" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Linq" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Linq.Expressions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Http" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Primitives" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Sockets" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.ObjectModel" version="4.0.12" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection.Extensions" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Resources.ResourceManager" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Extensions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Handles" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.InteropServices" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Numerics" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Algorithms" version="4.2.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Encoding" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Primitives" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.X509Certificates" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.Encoding" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.Encoding.Extensions" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.RegularExpressions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading.Tasks" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading.Timer" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Xml.ReaderWriter" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Xml.XDocument" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="Validation" version="2.3.7" targetFramework="xamarinios10" />
|
||||
<package id="Xam.Plugin.Connectivity" version="2.3.0" targetFramework="xamarinios10" />
|
||||
<package id="Xam.Plugins.Settings" version="2.5.4" targetFramework="xamarinios10" />
|
||||
<package id="Xamarin.Build.Download" version="0.4.3" targetFramework="xamarinios10" />
|
||||
<package id="Xamarin.Google.iOS.Analytics" version="3.17.0.1" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC.Unity" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC.SimpleInjector" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
</packages>
|
@ -2,13 +2,11 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using XLabs.Ioc;
|
||||
using XLabs.Ioc.Unity;
|
||||
|
||||
using Foundation;
|
||||
using UIKit;
|
||||
using Bit.App.Abstractions;
|
||||
using Bit.App.Services;
|
||||
using Microsoft.Practices.Unity;
|
||||
using Bit.iOS.Services;
|
||||
using Plugin.Connectivity;
|
||||
using Acr.UserDialogs;
|
||||
@ -26,6 +24,8 @@ using HockeyApp.iOS;
|
||||
using Bit.iOS.Core;
|
||||
using Google.Analytics;
|
||||
using FFImageLoading.Forms.Touch;
|
||||
using SimpleInjector;
|
||||
using XLabs.Ioc.SimpleInjectorContainer;
|
||||
|
||||
namespace Bit.iOS
|
||||
{
|
||||
@ -244,58 +244,61 @@ namespace Bit.iOS
|
||||
|
||||
private void SetIoc()
|
||||
{
|
||||
var container = new UnityContainer();
|
||||
var container = new Container();
|
||||
|
||||
container
|
||||
// Services
|
||||
.RegisterType<IDatabaseService, DatabaseService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISqlService, SqlService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISecureStorageService, KeyChainStorageService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ICryptoService, CryptoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IKeyDerivationService, CommonCryptoKeyDerivationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAuthService, AuthService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IFolderService, FolderService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginService, LoginService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISyncService, SyncService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IClipboardService, ClipboardService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IPushNotificationListener, PushNotificationListener>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppIdService, AppIdService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IPasswordGenerationService, PasswordGenerationService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IReflectionService, ReflectionService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILockService, LockService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAppInfoService, AppInfoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IGoogleAnalyticsService, GoogleAnalyticsService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IDeviceInfoService, DeviceInfoService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILocalizeService, LocalizeService>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILogService, LogService>(new ContainerControlledLifetimeManager())
|
||||
.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())
|
||||
.RegisterType<ILoginRepository, LoginRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ILoginApiRepository, LoginApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IConnectApiRepository, ConnectApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IDeviceApiRepository, DeviceApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<IAccountsApiRepository, AccountsApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ICipherApiRepository, CipherApiRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsRepository, SettingsRepository>(new ContainerControlledLifetimeManager())
|
||||
.RegisterType<ISettingsApiRepository, SettingsApiRepository>(new ContainerControlledLifetimeManager())
|
||||
// Other
|
||||
.RegisterInstance(CrossConnectivity.Current, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(UserDialogs.Instance, new ContainerControlledLifetimeManager())
|
||||
.RegisterInstance(CrossFingerprint.Current, new ContainerControlledLifetimeManager());
|
||||
// Services
|
||||
container.RegisterSingleton<IDatabaseService, DatabaseService>();
|
||||
container.RegisterSingleton<ISqlService, SqlService>();
|
||||
container.RegisterSingleton<ISecureStorageService, KeyChainStorageService>();
|
||||
container.RegisterSingleton<ICryptoService, CryptoService>();
|
||||
container.RegisterSingleton<IKeyDerivationService, CommonCryptoKeyDerivationService>();
|
||||
container.RegisterSingleton<IAuthService, AuthService>();
|
||||
container.RegisterSingleton<IFolderService, FolderService>();
|
||||
container.RegisterSingleton<ILoginService, LoginService>();
|
||||
container.RegisterSingleton<ISyncService, SyncService>();
|
||||
container.RegisterSingleton<IClipboardService, ClipboardService>();
|
||||
container.RegisterSingleton<IAppIdService, AppIdService>();
|
||||
container.RegisterSingleton<IPasswordGenerationService, PasswordGenerationService>();
|
||||
container.RegisterSingleton<IReflectionService, ReflectionService>();
|
||||
container.RegisterSingleton<ILockService, LockService>();
|
||||
container.RegisterSingleton<IAppInfoService, AppInfoService>();
|
||||
container.RegisterSingleton<IGoogleAnalyticsService, GoogleAnalyticsService>();
|
||||
container.RegisterSingleton<IDeviceInfoService, DeviceInfoService>();
|
||||
container.RegisterSingleton<ILocalizeService, LocalizeService>();
|
||||
container.RegisterSingleton<ILogService, LogService>();
|
||||
container.RegisterSingleton<IHttpService, HttpService>();
|
||||
container.RegisterSingleton<ITokenService, TokenService>();
|
||||
container.RegisterSingleton<ISettingsService, SettingsService>();
|
||||
container.RegisterSingleton<IAppSettingsService, AppSettingsService>();
|
||||
|
||||
// Repositories
|
||||
container.RegisterSingleton<IFolderRepository, FolderRepository>();
|
||||
container.RegisterSingleton<IFolderApiRepository, FolderApiRepository>();
|
||||
container.RegisterSingleton<ILoginRepository, LoginRepository>();
|
||||
container.RegisterSingleton<ILoginApiRepository, LoginApiRepository>();
|
||||
container.RegisterSingleton<IConnectApiRepository, ConnectApiRepository>();
|
||||
container.RegisterSingleton<IDeviceApiRepository, DeviceApiRepository>();
|
||||
container.RegisterSingleton<IAccountsApiRepository, AccountsApiRepository>();
|
||||
container.RegisterSingleton<ICipherApiRepository, CipherApiRepository>();
|
||||
container.RegisterSingleton<ISettingsRepository, SettingsRepository>();
|
||||
container.RegisterSingleton<ISettingsApiRepository, SettingsApiRepository>();
|
||||
|
||||
// Other
|
||||
container.RegisterSingleton(CrossConnectivity.Current);
|
||||
container.RegisterSingleton(UserDialogs.Instance);
|
||||
container.RegisterSingleton(CrossFingerprint.Current);
|
||||
|
||||
Settings = new Settings("group.com.8bit.bitwarden");
|
||||
container.RegisterInstance(Settings, new ContainerControlledLifetimeManager());
|
||||
container.RegisterSingleton(Settings);
|
||||
|
||||
CrossPushNotification.Initialize(container.Resolve<IPushNotificationListener>());
|
||||
container.RegisterInstance(CrossPushNotification.Current, new ContainerControlledLifetimeManager());
|
||||
// Push
|
||||
var pushListener = new PushNotificationListener();
|
||||
container.RegisterSingleton<IPushNotificationListener>(pushListener);
|
||||
CrossPushNotification.Initialize(pushListener);
|
||||
container.RegisterSingleton(CrossPushNotification.Current);
|
||||
CachedImageRenderer.Init();
|
||||
|
||||
Resolver.SetResolver(new UnityResolver(container));
|
||||
Resolver.SetResolver(new SimpleInjectorResolver(container));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -10,6 +10,10 @@
|
||||
<assemblyIdentity name="Validation" publicKeyToken="2fc06f0d701809a7" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.7.0" newVersion="4.0.7.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -343,6 +343,9 @@
|
||||
<HintPath>..\..\packages\Xam.Plugin.PushNotification.1.2.4\lib\Xamarin.iOS10\PushNotification.Plugin.Abstractions.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="SimpleInjector, Version=4.0.7.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\SimpleInjector.4.0.7\lib\netstandard1.3\SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SQLite-net, Version=1.1.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\sqlite-net-pcl.1.2.1\lib\portable-net45+wp8+wpa81+win8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\SQLite-net.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@ -373,6 +376,8 @@
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="Validation, Version=2.3.0.0, Culture=neutral, PublicKeyToken=2fc06f0d701809a7, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\Validation.2.3.7\lib\dotnet\Validation.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
@ -396,17 +401,14 @@
|
||||
<Reference Include="Microsoft.Practices.ServiceLocation, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Practices.Unity, Version=3.5.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<HintPath>..\..\packages\Unity.3.5.1405-prerelease\lib\portable-net45+wp80+win8+wpa81+MonoAndroid10+MonoTouch10\Microsoft.Practices.Unity.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Splat, Version=1.6.2.0, Culture=neutral, PublicKeyToken=null">
|
||||
<HintPath>..\..\packages\Splat.1.6.2\lib\Xamarin.iOS10\Splat.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="XLabs.Ioc, Version=2.0.5782.12218, Culture=neutral, PublicKeyToken=null">
|
||||
<HintPath>..\..\packages\XLabs.IoC.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="XLabs.Ioc.Unity, Version=2.0.5782.12230, Culture=neutral, PublicKeyToken=null">
|
||||
<HintPath>..\..\packages\XLabs.IoC.Unity.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.Unity.dll</HintPath>
|
||||
<Reference Include="XLabs.Ioc.SimpleInjector, Version=2.0.5782.12229, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\..\packages\XLabs.IoC.SimpleInjector.2.0.5782\lib\portable-net45+netcore45+wp8+MonoAndroid1+MonoTouch1\XLabs.Ioc.SimpleInjector.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
@ -5,6 +5,9 @@
|
||||
<package id="BTProgressHUD" version="1.2.0.3" targetFramework="xamarinios10" />
|
||||
<package id="CommonServiceLocator" version="1.3" targetFramework="xamarinios10" />
|
||||
<package id="HockeySDK.Xamarin" version="4.1.2" targetFramework="xamarinios10" />
|
||||
<package id="Microsoft.NETCore.Platforms" version="1.0.1" targetFramework="xamarinios10" />
|
||||
<package id="Microsoft.Win32.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="NETStandard.Library" version="1.6.0" targetFramework="xamarinios10" />
|
||||
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="xamarinios10" />
|
||||
<package id="PCLCrypto" version="2.0.147" targetFramework="xamarinios10" />
|
||||
<package id="PInvoke.BCrypt" version="0.3.152" targetFramework="xamarinios10" />
|
||||
@ -12,6 +15,7 @@
|
||||
<package id="PInvoke.NCrypt" version="0.3.152" targetFramework="xamarinios10" />
|
||||
<package id="PInvoke.Windows.Core" version="0.3.152" targetFramework="xamarinios10" />
|
||||
<package id="Plugin.Fingerprint" version="1.2.0" targetFramework="xamarinios10" />
|
||||
<package id="SimpleInjector" version="4.0.7" targetFramework="xamarinios10" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="xamarinios10" />
|
||||
<package id="sqlite-net-pcl" version="1.2.1" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCL.bundle_green" version="0.9.3" targetFramework="xamarinios10" />
|
||||
@ -19,7 +23,49 @@
|
||||
<package id="SQLitePCLRaw.bundle_green" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCLRaw.core" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="SQLitePCLRaw.provider.sqlite3.ios_unified" version="1.1.2" targetFramework="xamarinios10" />
|
||||
<package id="Unity" version="3.5.1405-prerelease" targetFramework="xamarinios10" />
|
||||
<package id="System.AppContext" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Collections" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Collections.Concurrent" version="4.0.12" targetFramework="xamarinios10" />
|
||||
<package id="System.ComponentModel" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Console" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Debug" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Tools" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Diagnostics.Tracing" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Globalization" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Globalization.Calendars" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.Compression" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.Compression.ZipFile" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.FileSystem" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.IO.FileSystem.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Linq" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Linq.Expressions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Http" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Primitives" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Net.Sockets" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.ObjectModel" version="4.0.12" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection.Extensions" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Reflection.Primitives" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Resources.ResourceManager" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Extensions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Handles" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.InteropServices" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.InteropServices.RuntimeInformation" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Runtime.Numerics" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Algorithms" version="4.2.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Encoding" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.Primitives" version="4.0.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Security.Cryptography.X509Certificates" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.Encoding" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.Encoding.Extensions" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Text.RegularExpressions" version="4.1.0" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading.Tasks" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Threading.Timer" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="System.Xml.ReaderWriter" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="System.Xml.XDocument" version="4.0.11" targetFramework="xamarinios10" />
|
||||
<package id="Validation" version="2.3.7" targetFramework="xamarinios10" />
|
||||
<package id="WebP.Touch" version="1.0.3" targetFramework="xamarinios10" />
|
||||
<package id="Xam.Plugin.Connectivity" version="2.3.0" targetFramework="xamarinios10" />
|
||||
@ -31,5 +77,5 @@
|
||||
<package id="Xamarin.Forms" version="2.3.4.231" targetFramework="xamarinios10" />
|
||||
<package id="Xamarin.Google.iOS.Analytics" version="3.17.0.1" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC.Unity" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
<package id="XLabs.IoC.SimpleInjector" version="2.0.5782" targetFramework="xamarinios10" />
|
||||
</packages>
|
@ -10,6 +10,10 @@
|
||||
<assemblyIdentity name="Validation" publicKeyToken="2fc06f0d701809a7" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.7.0" newVersion="4.0.7.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -10,6 +10,10 @@
|
||||
<assemblyIdentity name="Validation" publicKeyToken="2fc06f0d701809a7" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.3.0.0" newVersion="2.3.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="SimpleInjector" publicKeyToken="984cb50dea722e99" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.7.0" newVersion="4.0.7.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
Loading…
Reference in New Issue
Block a user