Esempio n. 1
0
        static void _handleMethodCall(string method, List <JSONNode> args)
        {
            if (GlobalContext.context != null)
            {
                using (WindowProvider.of(context: GlobalContext.context).getScope()) {
                    switch (method)
                    {
                    case "pickImageSuccess": {
                        var node = args[0];
                        var dict = JSON.Parse(aJSON: node);
                        if (dict["image"] != null)
                        {
                            var image     = (string)dict["image"];
                            var imageData = Convert.FromBase64String(s: image);
                            _imageCallBack?.Invoke(obj: imageData);
                        }
                        else if (dict["imagePath"] != null)
                        {
                            var imagePath = (string)dict["imagePath"];
                            CImageUtils.asyncLoadFile(imagePath).Then(bytes => {
                                    _imageCallBack?.Invoke(obj: bytes);
                                });
                        }

                        removeListener();
                        StatusBarManager.hideStatusBar(false);
                        break;
                    }

                    case "pickVideoSuccess": {
                        var node = args[0];
                        var dict = JSON.Parse(aJSON: node);
                        if (dict["videoData"] != null)
                        {
                            var videoData = (string)dict["videoData"];
                            var data      = Convert.FromBase64String(s: videoData);
                            _videoCallBack?.Invoke(obj: data);
                        }
                        else if (dict["videoPath"] != null)
                        {
                            var videoPath = (string)dict["videoPath"];
                            CImageUtils.asyncLoadFile(videoPath).Then(bytes => {
                                    _videoCallBack?.Invoke(obj: bytes);
                                });
                        }

                        removeListener();
                        StatusBarManager.hideStatusBar(false);
                        break;
                    }

                    case "cancel": {
                        removeListener();
                        StatusBarManager.hideStatusBar(false);
                        break;
                    }
                    }
                }
            }
        }
Esempio n. 2
0
        public override void initState()
        {
            base.initState();
            StatusBarManager.hideStatusBar(true);
            this._isShow = SplashManager.isExistSplash();
            if (this._isShow)
            {
                this._lastSecond = SplashManager.getSplash().duration;
                this._timer      = Window.instance.run(TimeSpan.FromSeconds(1), this.t_Tick, true);
            }

            var isShowLogo  = SplashManager.getSplash().isShowLogo;
            var hexColorStr = SplashManager.getSplash().color;

            if (isShowLogo)
            {
                this.hexColor = 0xFFFFFFFF;
                try {
                    this.hexColor = Convert.ToUInt32(value: hexColorStr, 16);
                }
                catch (Exception e) {
                    Console.WriteLine(e);
                }
            }
        }
Esempio n. 3
0
        public override void initState()
        {
            base.initState();
            SplashManager.hiddenAndroidSpalsh();
            fetchInitData();
            VersionManager.checkForUpdates(type: CheckVersionType.initialize);
            StatusBarManager.hideStatusBar(false);
            SplashManager.fetchSplash();
            AnalyticsManager.AnalyticsOpenApp();
            SchedulerBinding.instance.addPostFrameCallback(_ => {
                if (UserInfoManager.isLogin())
                {
                    var userId = UserInfoManager.getUserInfo().userId ?? "";
                    if (userId.isNotEmpty())
                    {
                        StoreProvider.store.dispatcher.dispatch(Actions.fetchUserProfile(userId: userId));
                    }

                    StoreProvider.store.dispatcher.dispatch(Actions.fetchChannels(1));
                    StoreProvider.store.dispatcher.dispatch(Actions.fetchCreateChannelFilter());
                }

                StoreProvider.store.dispatcher.dispatch(Actions.fetchReviewUrl());
            });
        }
Esempio n. 4
0
 public override void initState()
 {
     base.initState();
     StatusBarManager.statusBarStyle(false);
     this._selectedIndex  = 1;
     this._pageController = new PageController(initialPage: this._selectedIndex);
     this._titleFontSize  = _maxTitleFontSize;
     this._navBarHeight   = _maxNavBarHeight;
     StatusBarManager.hideStatusBar(false);
     SplashManager.fetchSplash();
     AnalyticsManager.AnalyticsOpenApp();
     SchedulerBinding.instance.addPostFrameCallback(_ => { this.widget.actionModel.fetchReviewUrl(); });
     this._loginSubId = EventBus.subscribe(sName: EventBusConstant.login_success, args => {
         if (this._selectedIndex != 1)
         {
             this._selectedIndex = 1;
             this._pageController.animateToPage(
                 page: this._selectedIndex,
                 TimeSpan.FromMilliseconds(250),
                 curve: Curves.ease
                 );
         }
     });
     this._logoutSubId = EventBus.subscribe(sName: EventBusConstant.logout_success, args => {
         if (this._selectedIndex != 1)
         {
             this._selectedIndex = 1;
             this._pageController.animateToPage(
                 page: this._selectedIndex,
                 TimeSpan.FromMilliseconds(250),
                 curve: Curves.ease
                 );
         }
     });
 }
Esempio n. 5
0
 static void _handleMethodCall(string method, List <JSONNode> args)
 {
     if (context != null)
     {
         using (WindowProvider.of(context: context).getScope()) {
             switch (method)
             {
             case "OnReceiveQRCode": {
                 string qrCode = args[0];
                 if (qrCode.StartsWith("http://") || qrCode.StartsWith("https://"))
                 {
                     var uri = new Uri(uriString: qrCode);
                     if (uri.AbsoluteUri.StartsWith("https://connect"))
                     {
                         var token = HttpUtility.ParseQueryString(query: uri.Query).Get("token");
                         if (token.isNotEmpty())
                         {
                             var isLoggedIn = StoreProvider.store.getState().loginState.isLoggedIn;
                             if (isLoggedIn)
                             {
                                 LoginApi.LoginByQr(token: token, "check");
                                 StoreProvider.store.dispatcher.dispatch(new MainNavigatorPushToQRScanLoginAction {
                                         token = token
                                     });
                             }
                             else
                             {
                                 qrCodeToken = token;
                                 StoreProvider.store.dispatcher.dispatch(new MainNavigatorPushToAction {
                                         routeName = MainNavigatorRoutes.Login
                                     });
                             }
                         }
                         else
                         {
                             StoreProvider.store.dispatcher.dispatch(new MainNavigatorPushToWebViewAction {
                                     url = qrCode
                                 });
                         }
                     }
                     else
                     {
                         StoreProvider.store.dispatcher.dispatch(new MainNavigatorPushToWebViewAction {
                                 url = qrCode
                             });
                     }
                 }
                 StatusBarManager.hideStatusBar(false);
                 StatusBarManager.statusBarStyle(false);
                 removeListener();
             }
             break;
             }
         }
     }
 }
Esempio n. 6
0
        static void _handleMethodCall(string method, List <JSONNode> args)
        {
            if (GlobalContext.context != null)
            {
                using (WindowProvider.of(context: GlobalContext.context).getScope()) {
                    switch (method)
                    {
                    case "OnReceiveQRCode": {
                        string qrCode = args[0];
                        if (qrCode.StartsWith("http://") || qrCode.StartsWith("https://"))
                        {
                            var uri = new Uri(uriString: qrCode);
                            if (uri.AbsoluteUri.StartsWith("https://connect"))
                            {
                                var token = HttpUtility.ParseQueryString(query: uri.Query).Get("token");
                                if (token.isNotEmpty())
                                {
                                    var isLoggedIn = StoreProvider.store.getState().loginState.isLoggedIn;
                                    if (isLoggedIn)
                                    {
                                        checkToken(token: token);
                                    }
                                    else
                                    {
                                        qrCodeToken = token;
                                        StoreProvider.store.dispatcher.dispatch(new MainNavigatorPushToAction {
                                                routeName = MainNavigatorRoutes.Login
                                            });
                                    }
                                }
                                else
                                {
                                    CustomDialogUtils.showToast("暂不支持该二维码类型", Icons.sentiment_dissatisfied);
                                }
                            }
                            else
                            {
                                CustomDialogUtils.showToast("暂不支持该二维码类型", Icons.sentiment_dissatisfied);
                            }
                        }
                        else if (!qrCode.Equals("pop"))
                        {
                            CustomDialogUtils.showToast("暂不支持该二维码类型", Icons.sentiment_dissatisfied);
                        }

                        StatusBarManager.hideStatusBar(false);
                        StatusBarManager.statusBarStyle(isLight: StoreProvider.store.getState().loginState
                                                        .isLoggedIn);
                        removeListener();
                    }
                    break;
                    }
                }
            }
        }
Esempio n. 7
0
 public void didPush()
 {
     StatusBarManager.hideStatusBar(true);
     Promise.Delayed(TimeSpan.FromMilliseconds(400)).Then(() => {
         var width   = MediaQuery.of(this.context).size.width;
         var height  = width * 9 / 16;
         var originY = (MediaQuery.of(this.context).size.height - height) / 2;
         AVPlayerPlugin.initVideoPlayer(this.widget.url, HttpManager.getCookie(), 0, originY, width, height,
                                        false,
                                        this.widget.needUpdate, this.widget.limitSeconds);
     });
 }
Esempio n. 8
0
 public override void initState()
 {
     base.initState();
     StatusBarManager.hideStatusBar(false);
     SplashManager.fetchSplash();
     this._refreshController = new RefreshController();
     this.navBarHeight       = maxNavBarHeight;
     this.titleStyle         = CTextStyle.H2;
     SchedulerBinding.instance.addPostFrameCallback(_ => {
         this.widget.actionModel.startFetchArticles();
         this.widget.actionModel.fetchArticles(initOffset);
         this.widget.actionModel.fetchReviewUrl();
     });
 }
Esempio n. 9
0
 public override void initState()
 {
     base.initState();
     StatusBarManager.hideStatusBar(true);
 }
Esempio n. 10
0
 public void didPop()
 {
     AVPlayerPlugin.removePlayer();
     StatusBarManager.hideStatusBar(false);
 }
Esempio n. 11
0
 public override void dispose()
 {
     StatusBarManager.hideStatusBar(false);
     StatusBarManager.statusBarStyle(false);
     base.dispose();
 }
Esempio n. 12
0
 public override Element createElement()
 {
     StatusBarManager.hideStatusBar(true);
     return(base.createElement());
 }
Esempio n. 13
0
 public void didPop()
 {
     StatusBarManager.hideStatusBar(false);
 }
Esempio n. 14
0
 public void didPush()
 {
     StatusBarManager.hideStatusBar(true);
 }