iOS / iPhone 上的 SoundCloud API 流

问题描述 投票:0回答:1

通过 SC API / Javascript SDK 2.0.0 进行的流操作是否应该在 iOS/Safari 上工作? 我发现下面这个简单的例子并非如此。

SoundManager 似乎能够知道如何以及何时使用 html5。我是不是看错了?

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<h1>Sound Cloud iOS test</h1>
<script src="//connect.soundcloud.com/sdk-2.0.0.js"></script>
<script type="text/javascript">
    SC.initialize({
        client_id: "YOUR_CLIENT_ID"
    });

    SC.stream(
            '/tracks/293',
            function(sound) {
                sound.play()
            }
    );
</script>
</body>
</html>
html ios sdk soundcloud
1个回答
0
投票

未经用户启动,您无法在 iOS 设备上的 Safari 中强制播放或下载任何音频/视频文件。

在 iOS 上的 Safari 中(适用于所有设备,包括 iPad),用户可以 在蜂窝网络上,并按数据单元、预加载和 自动播放被禁用。在用户启动之前不会加载任何数据。 这意味着 JavaScript play() 和 load() 方法也处于非活动状态 直到用户启动播放,除非使用 play() 或 load() 方法 由用户操作触发。换句话说,用户发起的 Play 按钮有效,但 onLoad="play()" 事件无效。

这会播放电影:

<input type="button" value="Play" onclick="document.myMovie.play()">

这在 iOS 上没有任何作用:

<body onload="document.myMovie.play()">

您需要将播放操作包装到一个按钮中,以便音频流是选择加入而不是自动的。

查看 Safari 文档中的这篇文章以供参考。

© www.soinside.com 2019 - 2024. All rights reserved.