Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoalibspotify 2.0 对装载轨道的期望_Cocoalibspotify 2.0 - Fatal编程技术网

Cocoalibspotify 2.0 对装载轨道的期望

Cocoalibspotify 2.0 对装载轨道的期望,cocoalibspotify-2.0,Cocoalibspotify 2.0,在加载多个曲目时(使用SPAsyncLoading waitUntilLoaded:timeout:then),在加载时间方面是否有任何指导原则、基准或类似规定 我问这个问题的原因是,我已经尝试过在一批中加载~20个曲目,因为曲目元数据将在我的客户机中的整个流中使用(这是分步骤的,在这两个步骤之间,除了初始延迟之外,我不希望有任何加载时间,在这种情况下,用户更容易接受) 即,一次尝试装载多少轨道是合理的,以及“应该”花费多长时间? 加载20首曲目“很多”吗?加载一个单轨本身是否会触发许多新的请求

在加载多个曲目时(使用
SPAsyncLoading waitUntilLoaded:timeout:then
),在加载时间方面是否有任何指导原则、基准或类似规定

我问这个问题的原因是,我已经尝试过在一批中加载~20个曲目,因为曲目元数据将在我的客户机中的整个流中使用(这是分步骤的,在这两个步骤之间,除了初始延迟之外,我不希望有任何加载时间,在这种情况下,用户更容易接受)

即,一次尝试装载多少轨道是合理的,以及“应该”花费多长时间? 加载20首曲目“很多”吗?加载一个单轨本身是否会触发许多新的请求来提取元数据,从而使一次加载多个曲目成为一个非常糟糕的主意?除了超时之外,还有什么方法可以找出加载一个曲目失败的原因吗

通常(可能是十分之一),加载会在默认的20秒超时后失败(我尝试了更长的超时时间,没有太大的差异)。有时所有20条轨道都无法加载,有时只有一条轨道无法加载。 我敢说,在两次尝试之间,我的互联网连接保持不变(无论如何,尽可能多地保持不变)(其间可能需要一两分钟)


我意识到这里有很多关于什么是正常的,什么不是等的模糊输入,这显然取决于很多因素,比如你的互联网连接,Spotify服务器的状态等等,但是,也许可以给出一些提示,说明Spotify API的预期内容,以及是否有特定于Spotify API的应做和不应做的事情。

通常,规则是:只加载需要立即向用户显示其元数据的曲目,或者预加载下一步将显示的曲目

此外,由于CocoaLibSpotify使用队列,因此您在库上放置的负载越多,您的开销就越大。例如,如果你单独
SPAsyncLoading
一堆东西,它们都会单独排队,但它们的计时器会立即启动。如果你让足够的东西排队,他们甚至可能在超时触发时还没有开始加载

然而,由于大量的排队在内部进行,如果您在单个
SPAsyncLoading
调用中抛出大量内容,也会发生这种情况

要想让事情快速发展,就要轻装上阵,并尽量遵循第一句话中的指导原则。此外,尽量保持工作效率:

  • SPAlbumBrowse
    将一次性加载相册的曲目元数据,减少后端加载和排队时间

  • 与SPArtistBrowse相同

  • 我相信
    SPPlaylist
    也一样


一般来说,规则是:只加载您现在需要向用户显示其元数据的曲目,或者预加载下一步将显示的曲目

此外,由于CocoaLibSpotify使用队列,因此您在库上放置的负载越多,您的开销就越大。例如,如果你单独
SPAsyncLoading
一堆东西,它们都会单独排队,但它们的计时器会立即启动。如果你让足够的东西排队,他们甚至可能在超时触发时还没有开始加载

然而,由于大量的排队在内部进行,如果您在单个
SPAsyncLoading
调用中抛出大量内容,也会发生这种情况

要想让事情快速发展,就要轻装上阵,并尽量遵循第一句话中的指导原则。此外,尽量保持工作效率:

  • SPAlbumBrowse
    将一次性加载相册的曲目元数据,减少后端加载和排队时间

  • 与SPArtistBrowse相同

  • 我相信
    SPPlaylist
    也一样