[编辑完成/正确答案]
当用户当前所在国家/地区没有曲目时,deezer api 将标记“可读”设置为 false ,SDK 播放器自动跳过该曲目不可用(自动切换到 30 秒预览)。
国家之间的差异并不大。
如果您想使用高级用户的当前国家而不是服务器的位置,请不要忘记在每个请求中添加 & access_token = TOKEN 。如果您想确保为所有用户(Premium、Freemium 和 unlogged)提供完美的地理定位内容,最好从客户端而不是服务器端请求 api。仅供参考:我们目前正在审查此行为以对其进行优化和标准化。
同一首曲目可以有许多具有不同国家/地区权限的 ID(例如: http: //www.deezer.com/fr/track/60978718)。如果您使用意大利令牌向艺术家请求前 5 名,而使用德语令牌请求相同的请求,有时会发生,您拥有相同的歌曲但不同的 id。一个原因是,根据国家/地区的不同,可能会发生相同的歌曲未获得同一唱片公司的许可。
关于 API 的行为:
http://api.deezer.com/2.0/track/18232696:该曲目在法国可用,但在德国不可用(抱歉,我没有英国示例)
德国的要求:
{"id":18232696,"readable":false,"title":"Charmaine","link":"http:\/\/www.deezer.com\/track\/18232696","duration":280,"track_position":6,"disk_number":1,"rank":1,"preview":"http:\/\/cdn-preview-1.deezer.com\/stream\/1451d74b90d3331db9e35a4071b4795c-0.mp3","artist":{"id":379393,"name":"Suckers","link":"http:\/\/www.deezer.com\/artist\/379393","picture":"http:\/\/api.deezer.com\/2.0\/artist\/379393\/image","radio":true},"album":{"id":1713045,"title":"Candy Salad","link":"http:\/\/www.deezer.com\/music\/suckers\/candy-salad-1713045","cover":"http:\/\/api.deezer.com\/2.0\/album\/1713045\/image","release_date":"0000-00-00"},"type":"track"}
法国的要求:
{"id":18232696,"readable":true,"title":"Charmaine","link":"http:\/\/www.deezer.com\/track\/18232696","duration":280,"track_position":6,"disk_number":1,"rank":1,"preview":"http:\/\/cdn-preview-1.deezer.com\/stream\/1451d74b90d3331db9e35a4071b4795c-0.mp3","artist":{"id":379393,"name":"Suckers","link":"http:\/\/www.deezer.com\/artist\/379393","picture":"http:\/\/api.deezer.com\/2.0\/artist\/379393\/image","radio":true},"album":{"id":1713045,"title":"Candy Salad","link":"http:\/\/www.deezer.com\/music\/suckers\/candy-salad-1713045","cover":"http:\/\/api.deezer.com\/2.0\/album\/1713045\/image","release_date":"0000-00-00"},"type":"track"}
关于 SDK 的行为:
SDK 播放器会自动跳过不可用的曲目。在当前播放列表/队列中,不可用的曲目被视为“不存在”。
PS:我是 Deezer 团队的一员