示例#1
0
        protected override void RegisterTypes(ICrossContainer container)
        {
            base.RegisterTypes(container);
            container.Register <ISerializer, JsonConverter>();
            container.Register <IDeserializer, JsonConverter>();
            container.Register <IProgressPopup, ProgressPopup>();
            container.Register <IToastPopup, ToastPopup>();
            container.Register <IConfirmationPopup, ConfirmationPopup>();
            container.Register <IStorageManager <Settings>, SettingsManager <Settings> >();
            container.Register <INotificationHandler, NotificationHandler>();
            var settings = container.Create <IStorageManager <Settings> >();
            var mode     = AppMode.Development;

            settings.Set(s => s.Mode, mode);
        }
示例#2
0
        public AppDependencies(ICrossContainer container)
        {
            Container = container;
            // Shared dependencies
            container.Register <IProgressPopup, ProgressPopup>();
            container.Register <IToastPopup, ToastPopup>();
            container.Register <IConfirmationPopup, ConfirmationPopup>();
            container.Register <INotificationHandler, NotificationHandler>();
            container.Register <IActionSheetService, ActionSheetService>();
            container.Register <IMediaService, MediaService>();
            container.Register <IStorageService <Settings>, StorageService <Settings> >();

            // Factories
            container.Register <IEnumFactory <AppMode, IBaseUrl>, EnumFactory <AppMode, IBaseUrl> >();
            container.Register <IEnumFactory <MediaSource, IStreamSource>, EnumFactory <MediaSource, IStreamSource> >();
            container.Register <IEnumFactory <NotificationAction, INotificationAction>, EnumFactory <NotificationAction, INotificationAction> >();

            var ibaseurl = container.Create <IEnumFactory <AppMode, IBaseUrl> >().Resolve(AppMode.Development);

            // API
            container.Register <IAuthenticationService>(() => new AuthenticationService(ibaseurl));
        }
示例#3
0
 public async void RegisterTypes(ICrossContainer container)
 {
     container.Register <ILocalNotification, LocalNotificationImplementation>(FetchTarget.Singleton);
     LocalNotification = container.Create <ILocalNotification>() as LocalNotificationImplementation;
     await LocalNotification.Init();
 }
示例#4
0
 protected override async void RegisterTypes(ICrossContainer container) => await new AppDependencies(container).Async();
示例#5
0
 public void RegisterTypes(ICrossContainer container)
 {
     container.Register <ILocalNotification, LocalNotificationImplementation>(FetchTarget.Singleton);
 }