如何检查Samsung Smart TV是否有Internet连接?

时间:2013-12-19 09:12:35

标签: javascript samsung-smart-tv smart-tv

在播放视频之前,我需要知道互联网连接是否可用。 我怎么能得到它?

var url = 'http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4';
//url not found (no Internet)
player.Play(url);

现在这段代码工作错了。玩家开始玩,但我们没有互联网。 我怎么能确定我有连接到互联网?

//pseudo code
if (player.checkInternet){
 player.Play(url);
}else{
 alert('Error');
}

3 个答案:

答案 0 :(得分:2)

要检查HTTP的连接性,您可以使用以下功能: http://samsungdforum.com/Guide/ref00011/deviceapi_network_checkhttp.html

但是如果对于播放器,它有一些回调函数来处理网络错误,请访问player对象的文档并查看onConnectionFailed,onStreamNotFound等 http://samsungdforum.com/Guide/ref00014/sef_plugin_player.html

答案 1 :(得分:1)

我正在使用这个javascript函数检查三星电视上的网络

Main.CheckConnection = function () {
    //  if(gKeyValues.IsOnTV){
    //  Main.Print("Production environment-------");
    /* For Production Environment */
    var physicalConnection = 0,
    httpStatus = 0;
    var currentInterface = networkPlugin.GetActiveType();
    // If no active connection.
    if (currentInterface == -1) {   //wired=1,wireless=0,no connection=-1
        return false;
    }
    // Check physical connection of current interface.
    physicalConnection = networkPlugin.CheckPhysicalConnection(currentInterface);
    //  Main.Print("Network Status: " + physicalConnection);

    // If not connected or error.
    if (physicalConnection != 1) {
        //Main.okDialog_Init("Message");
        Main.Print("Network disconnected");
        //  Main.IsNetworkActive = false;
        return false;
    }
    // Check HTTP transport.
    httpStatus = networkPlugin.CheckHTTP(currentInterface);
    // If HTTP is not avaliable.
    if (httpStatus != 1) {
        alert("Network disconnected");
        Main.IsNetworkActive = false;
        return false;
    }
    Main.IsNetworkActive = true;
    return true;
    //  }
};

并在HTML页面中包含此插件

<object id="pluginObjectNetwork" border=0 classid="clsid:SAMSUNG-INFOLINK-NETWORK" style="width: 0px; height: 0px;"></object>

请根据您的要求修改此功能此功能可以解决samsun中所有与网络和互联网相关的问题

答案 2 :(得分:0)

您可以使用以下方法检查连接状态:

if (navigator.onLine) {
    player.Play(url);
} else {
    alert('Error');
}

但是,此方法可能与某些浏览器存在兼容性问题。请参阅:Browser compatibility