示例#1
0
        /// <summary>
        /// 注销后重新登录
        /// </summary>
        public async void Logout()
        {
            // 先停止接收,再清空用户信息
            PushHandler.StopRecvPush();
            // 注销时清空用户信息
            Kit.ResetUser();

            AtState.DeleteCookie("LoginPhone");
            AtState.DeleteCookie("LoginPwd");

            await Kit.Stub.OnLogout();

            Startup.ShowLogin(false);
        }
示例#2
0
文件: Startup.cs 项目: Daoting/dt
        /// <summary>
        /// 按默认流程启动:
        /// 1. 更新打开模型库
        /// 2. 已登录过,先自动登录
        /// 3. 未登录或登录失败时,根据 p_loginFirst 显示登录页或主页
        /// </summary>
        /// <param name="p_loginFirst">是否强制先登录</param>
        /// <returns></returns>
        public static async Task Run(bool p_loginFirst)
        {
            // 更新打开模型库
            if (!await OpenModelDb())
            {
                return;
            }

            string phone = AtState.GetCookie("LoginPhone");
            string pwd   = AtState.GetCookie("LoginPwd");

            if (!string.IsNullOrEmpty(phone) && !string.IsNullOrEmpty(pwd))
            {
                // 自动登录
                var result = await new UnaryRpc(
                    _svcName,
                    "Entry.LoginByPwd",
                    phone,
                    pwd
                    ).Call <LoginResult>();

                // 登录成功
                if (result.IsSuc)
                {
                    Kit.InitUser(result);
                    // 切换到主页
                    ShowHome();
                    // 接收服务器推送
                    PushHandler.Register();
                    return;
                }
            }

            // 未登录或登录失败
            if (p_loginFirst)
            {
                // 强制先登录
                ShowLogin(false);
            }
            else
            {
                // 未登录先显示主页
                ShowHome();
            }
        }
示例#3
0
文件: Startup.cs 项目: Daoting/dt
 /// <summary>
 /// 主动停止接收推送
 /// </summary>
 public static void StopSysPush()
 {
     PushHandler.StopRecvPush();
 }
示例#4
0
文件: Startup.cs 项目: Daoting/dt
 /// <summary>
 /// 注册接收服务器推送
 /// </summary>
 public static void RegisterSysPush()
 {
     PushHandler.Register();
 }