问题标签 [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 - 使用 musicKit 在我们的应用程序中播放音乐视频
我浏览了以下链接:- https://developer.apple.com/videos/play/wwdc2017/502/?time=362
我还从上述链接下载了演示项目:- https://developer.apple.com/sample-code/wwdc/2017/Interacting-with-Apple-Music-Content.zip
需要帮助来清除我对音乐套件的 2 个疑问:-
1.我们可以在我们的应用程序中使用musickit播放音乐视频吗?(或者我们需要AVKit来播放视频)
经验:-
请参阅此链接:- https://developer.apple.com/documentation/mediaplayer,其中提到“协议 MPSystemMusicPlayerController用于在音乐应用程序中播放视频的协议(是否仅表示默认的苹果音乐应用程序或我们的音乐应用程序)。”
我们还可以使用苹果音乐 api 获取音乐视频列表(src:- https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/AppleMusicWebServicesReference/GetaMusicVideo.html#//apple_ref/doc/ uid/TP40017625-CH18-SW1):-
获取https://api.music.apple.com/v1/catalog/ {storefront}/music-videos/{id}
但我们只能获取视频的预览网址。那么,我们究竟如何才能在我们的应用程序中播放完整或完整的音乐视频,而不是使用 musickit 的苹果音乐应用程序呢?
从前面提到的演示应用程序中,请参阅 Controllers 部分中的 MusicPlayerManager.swift 文件并找到以下行:-
让 musicPlayerController = MPMusicPlayerController.systemMusicPlayer
musicPlayerController 变量的类型是MPMusicPlayerController 和 MPSystemMusicPlayerController,因此它应该能够播放音频和视频文件。 MPSystemMusicPlayerController 中还有一个openToPlay(_ queueDescriptor: MPMusicPlayerQueueDescriptor)方法可以播放视频,但不确定在 MPMusicPlayerQueueDescriptor 中定义什么
2. 音乐视频是一种媒体类型还是专辑的一部分
在 wwdc 视频和演示应用程序中都只定义了四种媒体类型。来自演示应用程序中的 MediaItem.swift 文件:-
这让我对什么是音乐视频感到困惑。从 wwdc 看来,音乐视频似乎是专辑的一部分,它与专辑的关系可以在这里找到:- https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/AppleMusicWebServicesReference/MusicVideo.html#/ /apple_ref/doc/uid/TP40017625-CH29-SW1
请澄清以上疑虑。任何帮助表示赞赏。
ios - 苹果音乐用户令牌
我正在尝试使用requestUserToken方法获取用户令牌。我还生成了开发人员令牌,但它会返回错误,例如(SKErrorDomain 错误 7。)请任何人帮助我
ios - Apple Music 套件用户令牌发行 iOS 11 Swift 4
我正在尝试使用 Apple 提供的示例 Xcode 项目“Adding-content-to-Apple-Music”来熟悉 Apple 的 Music Kit SDK
我遇到了样本无法获取用户令牌的问题。我确保我拥有正确的开发者令牌。我在“授权”部分看到-
MPMediaLibrary:授权
SKCloudServiceController:授权
功能:符合音乐目录订阅条件
这是使用:Xcode 9.2、iOS 11.2、Swift 4
有人可以帮忙吗?
我在这里查看了其他人提出的相同问题:
我正在尝试获取苹果音乐 API 的用户令牌,我已经从 python 终端命令生成了有效的开发人员令牌
使用 JWT 获取 Apple Music SDK 的 userToken 时出错
AppleMusicKit SDK / 示例项目 - UserToken 问题
我也没有运气在 Apple 开发者论坛上寻找答案。还尝试在 Apple 开发者论坛上发布此帖子,但我的帖子被版主拒绝了。
谢谢你。
itunes-sdk - 在 Apple Music/iTunes 中查找 ISRC 的歌曲
我正在开发一个从外部来源检索歌曲ISRC的 iOS 应用程序。然后我需要使用 Apple 的 MusicKit SDK 使用 ISRC 在 Apple Music/iTunes 中获取歌曲。是否有可能做到这一点?Song 资源类型在歌曲属性中具有 ISRC,当您对歌曲执行 GET 请求时会返回该 ISRC,但该请求使用 Apple Music 歌曲 ID 来执行查找。那么我可以使用 ISRC 来查询 Apple Music 的歌曲吗?也很高兴在 iTunes Search API 上查找它,然后获取 ID(我认为它们在 Apple Music 和 iTunes 中是相同的?),然后使用该 ID 查询 Apple Music API。
我也在 Apple Developer MusicKit 论坛上问过这个问题,但到目前为止,还没有人回答我。
ios - 如何获取 Apple Music 播放列表的 ID
我目前正在制作一个快速应用程序,通过 MusicKit / Apple Music API 为用户创建播放列表。它在用户的库中创建此播放列表并返回格式的 ID p.XXXXXXXX
。然后我想打开 iOS 音乐应用程序并通过打开一个itunes.apple.com/us/playlist/XXXXXX?app=music
链接向用户显示新创建的播放列表。但是,此 URL 的 ID 都是 format pl.XXXXXXXX
。Mac iTunes 应用程序有一个Share Playlist
按钮可以获取pl.XXXXXXX
播放列表的 id,但是当 Apple Music API 只返回 id 时,如何快速获取此 ID p.XXXXXXXXXX
?谢谢!
javascript - Apple Music API 参考
我正在尝试使用 Apple Music API 来获取用户数据(播放列表、曲目、添加和创建播放列表)。
我不太确定是否需要注册为开发人员才能获得 API 访问权限。
ios - 在哪里存储我的 MusicKit 应用程序的开发者令牌?
我正在涉足 MusicKit API,并在示例应用程序中遇到了这个问题。
请记住,您不应在应用程序中硬编码开发人员令牌的值。这样一来,如果您需要生成新的开发者令牌,您无需向 App Store 提交新版本的应用程序即可。
这让我想知道我应该将令牌存储在哪里,因为它的最长有效期为 6 个月。我是否会在服务器上重新生成令牌并让应用程序定期请求一个新令牌?我错过了一些明显的东西吗?
ios - 创建 Apple Music 开发者令牌
我正在尝试使用 JWT.io 为 Apple Music api(ObjC)创建 JWT,由于某种原因,当我遵循 Apple 在文档中使用(ES256)所说的格式时,它不会生成令牌。有谁知道如何为 xcode 设置 Apple Music api 令牌?
ios - Apple Music 歌曲播放不工作
尝试使用以下代码使用 MPMusicPlayerController 播放歌曲
但是,在控制台中我经常看到
[MPMusicPlayerController prepareToPlay] 超时
并且要么什么都没有发生,要么播放器将从错误的歌曲开始,可能是我设备上的本地歌曲。
我正在尝试从我的 Apple Music Library 中播放一首歌曲,我使用他们的 API 来获取我的播放列表,然后是歌曲,曲目响应如下所示:
}
我在这里使用“id”作为开始播放的 itemID 播放参数(i.B0VN4GGf7Eldk)。这是对的还是应该是别的东西?试图弄清楚为什么这不会播放。
编辑:
在控制台中也看到了这个
[SDKPlayback] -[MPMusicPlayerController prepareToPlayWithCompletionHandler:] 完成错误:错误域=MPCPlayerRequestErrorDomain Code=1“未提供命令。” UserInfo={NSDebugDescription=未提供命令。} [SDKPlayback] -[MPMusicPlayerController play] 完成错误:错误域=MPCPlayerRequestErrorDomain Code=1000 “发送命令 0 失败” UserInfo={NSDebugDescription=发送命令 0 失败,NSUnderlyingError=0x1c8045b20 {错误域=MPCPlayerRequestErrorDomain 代码=1000“发送命令 0 失败(MRMediaRemoteCommandHandlerStatus = 1)”UserInfo={NSDebugDescription=发送命令 0 失败(MRMediaRemoteCommandHandlerStatus = 1),MPCPlayerErrorKeyMediaRemoteCommandHandlerStatus=1}}}
ios - MPMusicPlayerControllerMutableQueue 插入 Apple Music 歌曲不起作用
所以我这几天一直在尝试使用 MusicKit API。我一直在尝试使用MPMusicPlayerApplicationController和MutableQueue API。
我已经使用setQueue(with: [String])
Apple Music 歌曲的商店标识符数组初始化了队列。然后我想允许用户重新排序队列中的歌曲。我使用下面的代码来尝试。
如果afterItem
为 nil(即歌曲正确插入到队列的前面),上面的代码将按预期工作。但是,如果afterItem
不是 nil,则什么也不会发生。队列保持完全相同,就好像没有发生插入并且完成处理程序中没有提供错误一样。无论插入的歌曲是否已经在队列中,都会发生此问题。
我是否尝试错误地修改队列?