Windows应用商店Javascript后台音频tassk close()方法?

Windows应用商店Javascript后台音频tassk close()方法?,javascript,html,css,windows,windows-runtime,Javascript,Html,Css,Windows,Windows Runtime,我创建了一个简单的Windows8.1商店应用程序,用于播放互联网流媒体广播。它看起来和工作良好,但我不能上传我的应用到Windows应用商店!在验证之后,您会得到如下消息: WinJS后台任务 发现错误: WinJS后台任务测试遇到 以下错误: App Radio Skovoroda未在中调用close() 在文件default.html中找到后台任务JavaScript代码。 影响如果没有修复:具有后台任务但不调用close()的应用程序可能会耗尽电池电量。 如何修复:更新背景 要调用cl

我创建了一个简单的Windows8.1商店应用程序,用于播放互联网流媒体广播。它看起来和工作良好,但我不能上传我的应用到Windows应用商店!在验证之后,您会得到如下消息:

WinJS后台任务

  • 发现错误: WinJS后台任务测试遇到 以下错误: App Radio Skovoroda未在中调用close() 在文件default.html中找到后台任务JavaScript代码。 影响如果没有修复:具有后台任务但不调用close()的应用程序可能会耗尽电池电量。 如何修复:更新背景 要调用close()的任务
关键是我不需要调用close(),因为它是一个无线电播放器,所以它必须在后台播放很长时间!有什么想法吗?我的应用程序如何通过验证程序? 我的脚本代码:

    (function () {
        "use strict";

        var app = WinJS.Application;
        var activation = Windows.ApplicationModel.Activation;

        app.onactivated = function (args) {
            if (args.detail.kind === activation.ActivationKind.launch) {
                if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) {
                    // TODO: This application has been newly launched. Initialize
                    // your application here.
                } else {
                    // TODO: This application was suspended and then terminated.
                    // To create a smooth user experience, restore application state here so that it looks like the app never stopped running.
                }
                args.setPromise(WinJS.UI.processAll());


                var buttonMediaControl = document.getElementById("mediaControlButton");
                buttonMediaControl.addEventListener("click", playAndStop, false);


                //add variables for social buttons
                //Facebook
                var fbButton = document.getElementById("fbButton");
                fbButton.addEventListener("click", goToFbPage, false);
                //VKotakte
                var vkButton = document.getElementById("vkButton");
                vkButton.addEventListener("click", goToVkPage, false);
                //Twitter
                var twButton = document.getElementById("twButton");
                twButton.addEventListener("click", goToTwPage, false);
                //Instagram
                var igButton = document.getElementById("igButton");
                igButton.addEventListener("click", goToIgPage, false);
                //YouTube
                var ytButton = document.getElementById("ytButton");
                ytButton.addEventListener("click", goToYtPage, false);
                //TuneIn
                var tiButton = document.getElementById("tiButton");
                tiButton.addEventListener("click", goToTiPage, false)

                // Assign the button object to MediaControls
                var systemMediaControls = Windows.Media.SystemMediaTransportControls.getForCurrentView();

                systemMediaControls.addEventListener("buttonpressed", systemMediaControlsButtonPressed, false);

                systemMediaControls.isPlayEnabled = true;
                systemMediaControls.isPauseEnabled = true;
                systemMediaControls.isStopEnabled = true;


                systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.closed;
                }    
        };
       app.oncheckpoint = function (args) {
            };


        // Plays the media.
        function playMedia() {
            var media = document.getElementById("skovorodaStreamingAudio");
            media.play();
            var statusIcon = document.getElementById("playStopImage");
            statusIcon.src = "images/skovoroda_stop_button.png";
            var systemMediaControls = Windows.Media.SystemMediaTransportControls.getForCurrentView();
            systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.playing;

        }

        // Pauses the media.
        function pauseMedia() {
            var media = document.getElementById("skovorodaStreamingAudio");
            media.pause();
            var statusIcon = document.getElementById("playStopImage");
            statusIcon.src = "images/skovoroda_play_button.png";
            var systemMediaControls = Windows.Media.SystemMediaTransportControls.getForCurrentView();
            systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.paused;


        }

        // Stops the media.
        function stopMedia() {
            var media = document.getElementById("skovorodaStreamingAudio");
            media.pause();
            media.currentTime = 0;

        }

   function playAndStop() {
            var myAudio = document.getElementById("skovorodaStreamingAudio");
            var statusIcon = document.getElementById("playStopImage");
            if (myAudio.paused) {
                var systemMediaControls = Windows.Media.SystemMediaTransportControls.getForCurrentView();
                systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.playing;
                myAudio.play();
                statusIcon.src = "images/skovoroda_stop_button.png";
                } else {
                var systemMediaControls = Windows.Media.SystemMediaTransportControls.getForCurrentView();
                systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.paused;
                myAudio.pause();
                statusIcon.src = "images/skovoroda_play_button.png";

            } 
        }


        // The media Play event handler.
        function mediaPlaying() {
            // Update the SystemMediaTransportControl state.
            systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.playing;
        }

        // The media Pause event handler.
        function mediaPaused() {
            // Update the SystemMediaTransportControl state.
            systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.paused;
        }

        // The media Ended event handler.
        function mediaEnded() {
            // Update the SystemMediaTransportControl state.
            systemMediaControls.playbackStatus = Windows.Media.MediaPlaybackStatus.stopped;

        }


        function goToFbPage() {
            window.open("https://www.facebook.com/radioskovoroda?__mref=message_bubble");
        }
        function goToVkPage() {
            window.open("https://vk.com/radioskovoroda");
        }
        function goToTwPage() {
            window.open("https://twitter.com/RadioSkovoroda");
        }
        function goToIgPage() {
            window.open("https://instagram.com/radioskovoroda");
        }
        function goToYtPage() {
            window.open("https://www.youtube.com/channel/UCSgkIdg5MztN_2z9q_8u3Nw")
        }
        function goToTiPage() {
            window.open("http://tunein.com/radio/radio-skovoroda-s248591/")
        }
        // Event handler for SystemMediaTransportControls' buttonpressed event
        function systemMediaControlsButtonPressed() {

            if (Windows.Media.MediaControl.isPlaying === true) {
                pauseMedia();

            } else {
                playMedia();

            }
        }


        app.start();

    })();