我想了解一些关于Libspotify中播放列表文件夹处理的事情。有些事情看起来有点不一致(我得到的印象文件夹处理已被黑客入侵了吗?)
当我遍历容器中的所有播放列表时,我注意到我获得了所有文件夹的相同sp_playlist句柄值。这意味着我不能在文件夹上使用任何sp_playlist_xxx函数,对吧?所以我不能在它们上面注册回调,找不到它们的名字等等?
相反,我必须在PlaylistContainer上使用特殊功能来获取文件夹名称?
在指向文件夹的句柄上使用sp_playlist_add_ref和sp_playlist_release是否危险?
另外,sp_playlistcontainer_playlist_folder_id函数用于什么?
答案 0 :(得分:3)
您的假设大多是正确的。播放列表容器列表中的文件夹占位符就是 - 占位符。
相反,我必须在PlaylistContainer上使用特殊功能来获取文件夹名称?
是的,sp_playlistcontainer_playlist_folder_name()
。
在指向文件夹的句柄上使用sp_playlist_add_ref和sp_playlist_release是否危险?
不是特别的,只要你不在某个地方过度释放,但对所有事情都是如此。你只需拥有多个对占位符的拥有引用,这很好。
另外,sp_playlistcontainer_playlist_folder_id函数用于什么?
这是该文件夹的唯一ID,主要是因为您不能将指针用作唯一标识符,因为所有文件夹都使用相同的占位符对象。它允许您在不对名称进行字符串比较的情况下比较文件夹(由于多个文件夹可以具有相同的名称,因此实际上不是一个好主意)。