问题标签 [apple-musickit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何在 iOS 13 上访问用户音乐库
从 iOS 9.3 开始,我们可以使用 APISKCloudServiceController.requestAuthorization
请求访问用户音乐库的权限。文档说 Xcode 11 上这个 API 的唯一变化是对 tvOS 的支持,它不应该改变 iOS 上的任何东西(这是我正在使用的平台)。
但是,从 Xcode 11 beta 4 开始,我注意到SKCloudServiceController.requestAuthorization
回调没有被调用。
我的问题是:是否有新的 API 要求访问音乐库,或者这是 iOS 13 的错误?
我在 Apple Developer Forums 上发现了两个未解决的讨论,涉及相关问题:
SKCloudServiceController.requestAuthorization 在 iOS 13 上不起作用
ios - MPMusicPlayerController 继续播放后跳到下一首歌曲
我正在使用MPMusicPlayerController
播放 Apple Music 中的歌曲。我定期(每隔几秒钟)使用更改歌曲队列
setQueue(with: MPMusicPlayerStoreQueueDescriptor(storeIDs: ids))
我在播放音乐时没有任何问题,歌曲队列按要求更新,我可以跳到下一首歌曲,一切都很好。但是,每当我在歌曲中间暂停播放器时,请稍等片刻,直到设置新队列,然后再次播放 - 当前歌曲丢失,下一首歌曲开始播放!
所以想象以下情况:
- 我有歌曲
A, B, C, D
- 我将其设置为歌曲队列并调用
play()
player.nowPlayingItem
返回A
E, F, G, H
我在播放时将歌曲队列设置为- 我打电话
player.skipToNext()
- 歌曲E
按预期开始播放 - 我呼唤
player.pause()
——歌曲E
停顿 - 我打电话
player.play()
- 歌曲E
继续播放。到目前为止一切都很好 - 我
player.pause()
再次呼唤——歌曲E
暂停 - 我将歌曲队列设置为
I, J, K, L
. - 我打电话
player.play()
-我希望暂停的歌曲E
继续播放。相反,歌曲I
开始播放
我还为上述场景做了一些日志输出:
奇怪的是,即使我在两者之间更改队列,从锁定屏幕暂停/播放也可以正常工作。
有没有人遇到过类似的问题,任何提示/解决方法如何解决这个问题?
ios - MPMusicPlayerController 无法从 Apple Music 播放
我正在尝试播放 Apple Music 中的歌曲,但失败并显示以下日志:
我还尝试了来自 Apple 的官方示例代码项目,名为Adding-Content-to-Apple-Music
,并得到了类似的结果:
这个问题有时会通过玩应用程序、去 Apple Music 应用程序、在那里播放一些东西、杀死它、回来等等来随机解决......
如果有人遇到过类似的问题,请告诉我如何解决。
发生在 iOS 12 和 13、iPhone 6s 和 iPhone 11 上,Apple Music 帐户目前处于 3 个月的试用期。所有音乐功能都存在,能够成功获取开发者令牌和音乐用户令牌,都可以与 Apple Music API 请求一起正常工作。
javascript - Head Meta Tag MusicKit JS 中的 Apple Developer Token
在开始在 react 应用程序中使用 MusicKit JS 时,我在此处的文档中遇到了这种用于加载库(没有 NPM 包可用)的方法:
这非常简单,但是将开发人员令牌放在任何人都可以阅读的地方似乎并不安全。
问题:这是否安全,和/或是否有更好的方法来做到这一点?
作为记录,我确实尝试了设置“musickitloaded”事件侦听器的方法,但我无法让它始终如一地触发。
此外,使用如下环境变量不会隐藏令牌:
apple-musickit - Mac:如何删除 Apple Music OAuth 应用程序权限
应用程序(“我的特殊应用程序”)对我的帐户具有 Apple Music OAuth 权限。
从我的桌面(Apple Mac OS)...如何删除这些权限,以便 Apple 的 MusicKit JS 再次提示我进行授权?
apple-musickit - Apple MusicKit JS:如何播放完整歌曲,而不是预览?
o/
配置应用程序,启用 Apple Music 订阅,在我的网络应用程序中授权该用户,每当我从媒体队列播放歌曲时,我只会听到预览播放,而不是完整的歌曲。当我在 Apple Music 网站上以相同方式授权时,它会播放整首歌曲。
我在localhost上开发,但是所有cookies和localstorage项都设置好了,所以刷新后不会弹出授权。
我是否错过了一些我需要传递给 API 才能播放完整歌曲的魔法参数?
谢谢
apple-music - Apple Music API 中有多少个排行榜位置可用?
示例调用:https ://api.music.apple.com/v1/catalog/us/charts?types=songs&genre=34
帮助页面(https://developer.apple.com/documentation/applemusicapi/get_catalog_charts)说结果是分页的,一次可以检索 50 个位置。我想知道总共可以检索多少个位置(或者等效地,最大偏移量是多少)?谢谢。
api - 将曲目上传到 Apple Music (API)
有没有办法将曲目从我的电脑上传到 Apple Music?
Apple 提供了一个 API,但我只找到了以下请求:
POST https://api.music.apple.com/v1/me/library/playlists/{id}/tracks
据我了解,此请求可以将曲目添加到已上传到 Apple Music 的播放列表中。
api - Apple Music API - 如何获取用户标识符?
从 Apple Music API 获取音乐令牌后,我试图检索用户的信息。似乎 /me 端点不可用于店面以外的查询(https://api.music.apple.com/v1/me/storefront)。
问题是,我需要用唯一的 ID 识别每个用户,所以我需要检索任何有用的信息来做到这一点(例如,电子邮件地址可能是一个很好的起点)。
在 Apple Music API 开发者页面中,我找不到任何端点可以这样做。有什么我想念的吗?
谢谢 :)