Example #1
0
        protected override void SavePlayHistory(int duration, int position)
        {
            var parentId   = _playInfo.ChannelDetailInfo.Id;
            var parentName = _playInfo.ChannelDetailInfo.Title;
            var image      = _playInfo.ChannelDetailInfo.ImageUri;
            var subId      = ChannelUtils.CreateChannelId(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo);
            var subName    = ChannelUtils.CreateChannelTitle(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo, true);
            var index      = ChannelUtils.CreateComonIndex(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo);

            if (parentId <= 0)
            {
                return;
            }

            var localInfo = new CloudDataInfo();

            localInfo.ProgramIndex = index;
            localInfo.ImageUri     = image;
            localInfo.Id           = parentId;
            localInfo.Name         = parentName;
            localInfo.SubId        = subId;
            localInfo.SubName      = subName;
            localInfo.VideoType    = 3;
            localInfo.Pos          = position;
            localInfo.Duration     = duration;

            LocalRecentFactory.Instance.InsertLocalRecord(localInfo);
        }
Example #2
0
        private async void BeginGetPlayInfo()
        {
            if (_playInfo != null &&
                _playInfo.ChannelDetailInfo != null &&
                _playInfo.ChannelDetailInfo.ProgramInfos != null)
            {
                var historyWatch = await LocalRecentFactory.Instance.GetRecord(_playInfo.ChannelVID);

                if (historyWatch != null &&
                    ChannelUtils.JudgeProgreamIndex(_playInfo.ProgramIndex, historyWatch.ProgramIndex, _playInfo.ChannelDetailInfo))
                {
                    _playMessage.StartPosition = historyWatch.Pos;
                }

                var vvid = Guid.NewGuid().ToString();
                _dacPlayInfo.vvid  = vvid;
                _playMessage.Title = ChannelUtils.CreateChannelTitle(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo, false);
                _playInfoFactory.DownLoadDatas(ChannelUtils.CreateChannelId(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo), vvid);
            }
            else
            {
                if (PlayErrorAction != null)
                {
                    PlayErrorAction("无法获取影片播放地址");
                }
            }
        }
Example #3
0
        void _playInfoFactory_HttpSucceed(object sender, HttpFactoryArgs <Object> args)
        {
            _playMessage.PlayInfos      = _playInfoFactory.PlayInfos;
            _playMessage.HasPreProgram  = ChannelUtils.CreatePreviousIndex(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo) >= 0 ? true : false;
            _playMessage.HasNextProgram = ChannelUtils.CreateNextIndex(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo) >= 0 ? true : false;
            _playMessage.ShareInfo      = new PlayShareInfo(
                ChannelUtils.CreateChannelId(_playInfo.ProgramIndex, _playInfo.ChannelDetailInfo),
                _playMessage.Title, _playInfo.ChannelDetailInfo.ImageUri);

            var info = _playInfoFactory.CreatePlayInfo(_playFileType);

            if (info != null)
            {
                _playMessage.CurrentPlayInfo = info;
                Play(info);
                if (PlayMessageAction != null)
                {
                    PlayMessageAction(_playMessage);
                }
            }
            else
            {
                if (PlayErrorAction != null)
                {
                    PlayErrorAction("无法获取影片播放地址");
                }
            }
        }