首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Deezer Javascript SDK playAlbum偏移量在移动设备上被忽略

问Deezer Javascript SDK playAlbum偏移量在移动设备上被忽略
EN

Stack Overflow用户
提问于 2015-06-17 01:13:53
回答 1查看 69关注 0票数 0

在我的Deezer InApp中,当我调用带有非零偏移量的DZ.player.playAlbum方法时,例如DZ.player.playAlbum(10008268, true, 0, 13),在Deezer桌面站点上,播放从给定的偏移量开始,但在移动应用程序(安卓和iOS)中,播放从头开始。移动端是否支持偏移量?有什么变通办法吗?这对我来说将是一个重要的特性。

EN

回答 1

Stack Overflow用户

发布于 2015-06-17 21:41:33

我发现了一种基于DZ.player.seek的变通方法,似乎可以在安卓系统上运行,但在iOS上使用receiving player_position events works on iOS之前不能运行

代码语言:javascript
复制
const album = 10008268;
const trackIndex = 0;
const offset = 10;

DZ.player.playAlbum(album, true, trackIndex, tracklist => {
  if (offset) {
    DZ.Event.subscribe('player_position', args => {
      const position = args ? args[0] : null;
      if (position) {
        const currentTrack = tracklist.tracks[trackIndex];
        const currentTrackLength = Number(currentTrack.duration);
        const seekOffset = offset / currentTrackLength * 100;
        DZ.player.seek(seekOffset);

        setTimeout(() => DZ.Event.unsubscribe('player_position'));
      }
    });
  }
});

需要监听player_position事件,因为如果播放器位置为0,则调用DZ.player.seek似乎没有任何效果。另外,我需要使用setTimeout在回调函数之外取消订阅,否则我会得到一个异常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30874011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档