| | |
| | | if (deviceResult.Code == StateCode.SUCCESS) |
| | | { |
| | | endTime = DateTime.Now.AddSeconds(100); |
| | | |
| | | MainPage.Log($"读取设备信息成功"); |
| | | var deviceList = Newtonsoft.Json.JsonConvert.DeserializeObject<DevcieApiPack>(deviceResult.Data.ToString()); |
| | | if (deviceList == null) |
| | |
| | | var localFunction = allLocalFuntion.Find((obj) => obj.sid == updateTemp.sid); |
| | | if (localFunction == null) |
| | | { |
| | | Console.WriteLine("找不到音乐播放器添=======" + revString); |
| | | continue; |
| | | } |
| | | if (Ins.GatewayOnline_Local && isCloudData)//本地链接,除了涂鸦设备数据之外的云端数据不处理 |
| | |
| | | { |
| | | localFunction.time_stamp = temp.time_stamp; |
| | | localFunction.SetAttrState(attr.key, attr.value); |
| | | |
| | | Console.WriteLine("音乐播放器添加缓存数据=======" + revString); |
| | | |
| | | } |
| | | |
| | | //更新界面状态 |
| | |
| | | static readonly string a31MusiceModeListFilePath = "A31MusiceModeListFilePath"; |
| | | static A31MusicModel() |
| | | { |
| | | Refresh(); |
| | | //Refresh(); |
| | | } |
| | | |
| | | |
| | |
| | | public bool IsCanShow = true; |
| | | |
| | | /// <summary> |
| | | /// 是否在线,如果在线就允许读取信息 |
| | | /// </summary> |
| | | public bool IsOnLine = true; |
| | | |
| | | |
| | | /// <summary> |
| | | /// 列表 |
| | | /// </summary> |
| | | public List<PalyList> palyLists = new List<PalyList>(); |
| | |
| | | /// 喜爱音乐列表 |
| | | /// </summary> |
| | | public List<Songs> LoveMusicInfoList = new List<Songs>(); |
| | | |
| | | /// <summary> |
| | | /// DLNA所有列表 |
| | | /// </summary> |
| | | public List<Songs> dlnaMusicInfoLists = new List<Songs>(); |
| | | |
| | | /// <summary> |
| | | ///创建音乐文件列表 |
| | |
| | | } |
| | | return list.songs; |
| | | } |
| | | /// <summary> |
| | | /// 记录主播放器是否被收藏(秀桡定义的) |
| | | /// </summary> |
| | | public bool MainPlayCollection = false; |
| | | |
| | | |
| | | public Slaves Slave = new Slaves(); |
| | | /// <summary> |
| | |
| | | |
| | | public void Show() |
| | | { |
| | | |
| | | ///1秒定时更新状态 |
| | | timerUpdateStatus(); |
| | | #region ---界面布局--- |
| | |
| | | playView.endTimeBtn.Text = totalTime; |
| | | |
| | | topView.topNameBtn.Text = A31MusicModel.Current.functionMusic.name; |
| | | |
| | | string s = A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode); |
| | | switch (A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.mode)) |
| | | { |
| | | case ValueProperty.list_cycle://列表循环 |
| | |
| | | Volume.MusicVolume = playView.volSeekBar.Progress; |
| | | //当前播放音乐时间 |
| | | //按道理不会为空,GetAttrState("playing_time")值可能为空,强制转换int.Parse()会出现异常,不过也做了异常处理了 |
| | | int playSecond = int.Parse(A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.playing_time))/1000+ (int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds; |
| | | int playSecond = int.Parse(A31MusicModel.Current.functionMusic.GetAttrState(KeyProperty.playing_time))+ (int)(DateTime.Now - A31MusicModel.Current.LastDateTime).TotalSeconds; |
| | | |
| | | int playMusicMinute = playSecond / 60; |
| | | //秒钟 |
| | |
| | | playView.diyArcSeekBar.Progress = (int)(playSecond * 100.0 / totalSecond);//+1 |
| | | } |
| | | |
| | | Console.WriteLine("打印时间======"+playTime); |
| | | |
| | | } |
| | | else |
| | |
| | | { |
| | | UpdateThread.updateCurrMusicThread(frameLayout, middViewLayout, A31MusicModel.Current); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | |
| | | verticalRefresh.BeginHeaderRefreshingAction += () => |
| | | { |
| | | |
| | | SeachMusic(); |
| | | verticalRefresh.EndHeaderRefreshing(); |
| | | |
| | | ////发送读取音乐播放器状态线程 |
| | | SeachMusic(); |
| | | }; |
| | | this.AddChidren(loading); |
| | | SeachMusic(); |
| | |
| | | /// </summary> |
| | | void SeachMusic() |
| | | { |
| | | |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | verticalRefresh.RemoveAll(); |
| | | |
| | | var musicListFunction = SendMethod.mMethod.GetMusicList; |
| | | var musicListFunction = FunctionList.List.GetMusicList(); |
| | | for (int i = 0; i < musicListFunction.Count; i++) |
| | | { |
| | | var function = musicListFunction[i]; |
| | | var music = A31MusicModel.A31MusicModelList.Find((music) => music.functionMusic.deviceId == function.deviceId); |
| | | var music = A31MusicModel.A31MusicModelList.Find((music) => |
| | | (music.functionMusic.deviceId == function.deviceId && function.spk == "music.standard") || ( |
| | | music.functionMusic.deviceId == function.deviceId && function.spk == "av.music") |
| | | ); |
| | | if (music == null) |
| | | { |
| | | A31MusicModel.A31MusicModelList.Add(new A31MusicModel { functionMusic = function }); |
| | |
| | | //不在线不显示 |
| | | continue; |
| | | } |
| | | |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | MusicListView(a31player); |
| | |
| | | { |
| | | try |
| | | { |
| | | //RefreshDeviceStatus(functionIds); |
| | | // RefreshDeviceStatus(functionIds); |
| | | a31Music.LastDateTime = DateTime.Now; |
| | | ///从缓存里面查找音乐播放器对象<缓存数据收到推送过来的状态会更新缓存数据> |
| | | var allLocalFuntion = FunctionList.List.GetDeviceFunctionList(); |
| | |
| | | } |
| | | ///更新的数据 |
| | | a31Music.functionMusic = localFunction; |
| | | |
| | | } |
| | | catch { } |
| | | } |
| | |
| | | Height = Application.GetRealHeight(526), |
| | | Width = Application.GetRealWidth(327), |
| | | BackgroundImagePath = "MusicIcon/playBj.png", |
| | | Name="fl", |
| | | |
| | | }; |
| | | /// <summary> |
| | | /// 音乐汉字 |
| | |
| | | TextSize = TextSize.Text24, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextID = StringId.a31Music, |
| | | Name = "musicname" |
| | | }; |
| | | /// <summary> |
| | | /// 区域名称 |
| | |
| | | TextColor = MusicColor.MusicNoTxetColor, |
| | | TextSize = TextSize.Text12, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Name= "region", |
| | | }; |
| | | /// <summary> |
| | | ///收藏图标 |
| | |
| | | Height = Application.GetRealWidth(40), |
| | | UnSelectedImagePath = "MusicIcon/collect.png", |
| | | SelectedImagePath = "MusicIcon/collectSelected.png", |
| | | Name = "collect" |
| | | }; |
| | | /// <summary> |
| | | ///快,退进度条父控件 |