Esempio n. 1
0
        // Disabled per GitHub Issue #211
        //[TestMethod]
        public void VerifyCanNotAddWUXItems()
        {
            if (!ApiInformation.IsTypePresent("Windows.UI.Xaml.Controls.NavigationViewItem"))
            {
                Log.Warning("WUX version of NavigationViewItem only available starting in RS3.");
                return;
            }

            RunOnUIThread.Execute(() =>
            {
                var navView = new NavigationView();

                var muxItem = new Microsoft.UI.Xaml.Controls.NavigationViewItem {
                    Content = "MUX Item"
                };
                navView.MenuItems.Add(muxItem);

                navView.MenuItems.Add(new Microsoft.UI.Xaml.Controls.NavigationViewItemSeparator());

                // No errors should occur here when we only use MUX items
                navView.UpdateLayout();

                var wuxItem = new Windows.UI.Xaml.Controls.NavigationViewItem {
                    Content = "WUX Item"
                };
                navView.MenuItems.Add(wuxItem);

                // But adding a WUX item should generate an exception (as soon as the new item gets processed)
                Verify.Throws <Exception>(() => { navView.UpdateLayout(); });
            });
        }
Esempio n. 2
0
        private async void LoginDone()
        {
            //加载我喜欢的歌
            (bool isok, JObject js) = await Common.ncapi.RequestAsync(CloudMusicApiProviders.Likelist, new Dictionary <string, object>() { { "uid", Common.LoginedUser.id } });

            Common.LikedSongs = js["ids"].ToObject <List <string> >();

            //加载用户歌单
            Microsoft.UI.Xaml.Controls.NavigationViewItem nowitem = NavItemsMyList;
            (bool isOk, JObject json) = await Common.ncapi.RequestAsync(CloudMusicApiProviders.UserPlaylist, new Dictionary <string, object>() { { "uid", Common.LoginedUser.id } });

            if (isok)
            {
                NavItemsLikeList.Visibility = Visibility.Visible;
                NavItemsMyList.Visibility   = Visibility.Visible;
                foreach (JToken jToken in json["playlist"])
                {
                    if (jToken["subscribed"].ToString() == "True")
                    {
                        NavItemsLikeList.MenuItems.Add(new NavigationViewItem()
                        {
                            Content = jToken["name"].ToString(),
                            Tag     = "Playlist" + jToken["id"]
                        });
                    }
                    else
                    {
                        NavItemsMyList.MenuItems.Add(new NavigationViewItem()
                        {
                            Content = jToken["name"].ToString(),
                            Tag     = "Playlist" + jToken["id"]
                        });
                    }
                }
            }
        }
Esempio n. 3
0
        private async void LoginDone()
        {
            DialogLogin.Hide();
            //加载我喜欢的歌
            _ = Task.Run((() =>
            {
                Common.Invoke((async() =>
                {
                    (bool isok, JObject js) = await Common.ncapi.RequestAsync(CloudMusicApiProviders.Likelist,
                                                                              new Dictionary <string, object>()
                    {
                        { "uid", Common.LoginedUser.id }
                    });
                    Common.LikedSongs = js["ids"].ToObject <List <string> >();
                }));
            }));

            _ = Task.Run((() =>
            {
                Common.Invoke((async() =>
                {
                    //加载用户歌单
                    Microsoft.UI.Xaml.Controls.NavigationViewItem nowitem = NavItemsMyList;
                    (bool isOk, JObject json) = await Common.ncapi.RequestAsync(CloudMusicApiProviders.UserPlaylist,
                                                                                new Dictionary <string, object>()
                    {
                        { "uid", Common.LoginedUser.id }
                    });
                    if (isOk)
                    {
                        NavItemsLikeList.Visibility = Visibility.Visible;
                        NavItemsMyList.Visibility = Visibility.Visible;
                        Common.MySongLists.Clear();
                        foreach (JToken jToken in json["playlist"])
                        {
                            if (jToken["subscribed"].ToString() == "True")
                            {
                                NavItemsLikeList.MenuItems.Add(new NavigationViewItem()
                                {
                                    Content = jToken["name"].ToString(),
                                    Tag = "Playlist" + jToken["id"]
                                });
                            }
                            else
                            {
                                Common.MySongLists.Add(new NCPlayList()
                                {
                                    cover = jToken["coverImgUrl"].ToString(),
                                    creater = new NCUser()
                                    {
                                        avatar = jToken["creator"]["avatarUrl"].ToString(),
                                        id = jToken["creator"]["userId"].ToString(),
                                        name = jToken["creator"]["nickname"].ToString(),
                                        signature = jToken["creator"]["signature"].ToString()
                                    },
                                    plid = jToken["id"].ToString(),
                                    name = jToken["name"].ToString(),
                                    desc = jToken["description"].ToString()
                                });
                                NavItemsMyList.MenuItems.Add(new NavigationViewItem()
                                {
                                    Content = jToken["name"].ToString(),
                                    Tag = "Playlist" + jToken["id"]
                                });
                            }
                        }
                    }
                }));
            }));

            // 执行签到操作
            _ = Task.Run((() =>
            {
                Common.Invoke((() =>
                {
                    Common.ncapi.RequestAsync(CloudMusicApiProviders.DailySignin);
                    Common.ncapi.RequestAsync(CloudMusicApiProviders.DailySignin, new Dictionary <string, object>()
                    {
                        { "type", 1 }
                    });
                    //刷播放量不?
                }));
            }));

            HyPlayList.OnMediaEnd += (hpi =>
            {
                // 播放数据
                _ = Task.Run((() =>
                {
                    Common.Invoke((() =>
                    {
                        if (!hpi.isOnline)
                        {
                            return;
                        }
                        Common.ncapi.RequestAsync(CloudMusicApiProviders.Scrobble, new Dictionary <string, object>()
                        {
                            { "id", hpi.NcPlayItem.sid },
                            { "sourceid", "-1" }
                        });
                    }));
                }));
            });
        }