问题标签 [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.

0 投票
2 回答
253 浏览

ios - StoreKit - requestPersonalizationToken 的 clientToken 格式?

在稀疏的Apple StoreKit 文档中,它提到使用 a从设备clientToken请求 apersonalizationToken通过requestPersonalizationToken.

没有随附的文档来描述此令牌应该是什么。我曾假设它应该采用开发人员JWT令牌的形式,但这似乎不起作用,并SKErrorDomain code 8通过nil令牌响应给出错误。

我知道该令牌适用于对音乐 API 的常规调用,因此假设它具有正确的developerToken.

我知道 ApplerequestUserTokenForDeveloperToken直到今年晚些时候才会发放代币,但假设这requestPersonalizationToken是 iOS 11 发布之前的当前(尽管已经弃用)方法。

0 投票
0 回答
196 浏览

ios - MusicKit - 个人评级删除/更新请求获得 HTTP 501

我可以从 API 中获取用户对歌曲的评分,如下所示。当 API 返回成功响应时,我了解我的开发人员令牌和用户令牌格式正确且有效。

但是,当我尝试删除评级或设置它时,API 返回 HTTP 501。

要删除用户评分,我将按照 API文档中的说明发送 HTTP DELETE :

要将评级设置为不同的值,我使用带有 JSON 有效负载的 HTTP PUT,如文档中所述:

HTML 响应将 URL 转储为 HTTP,但我验证我的初始请求是 HTTPS。

有没有人执行这些请求没有问题?

提前致谢。

更新:截至 2017 年 7 月 12 日,API 正在返回记录在案的响应。我猜这是 API 方面的错误,现在已修复。

0 投票
1 回答
911 浏览

swift - Apple 提供的 MusicKit 示例应用程序遇到问题

我正在尝试在 Xcode 9 beta 3 上构建 Apple 提供的 Music Kit 示例应用程序“向 Apple Music 添加内容”。但是我遇到了 4 个这样的错误:三个“不明确地使用 'play()'”错误和一个“'pause()' 的模糊使用”

如果您已经解决了这个问题,请告诉我如何解决这个问题。

0 投票
1 回答
184 浏览

ios - 从 iTunes 获取最近的播放列表

我需要我们从苹果音乐或 iPhone 上的 iTunes 播放的最近播放列表。所以,如果有人有演示、链接或教程,请与我分享。我正在关注“ https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/AppleMusicWebServicesReference/GetRecentlyPlayed.html#//apple_ref/doc/uid/TP40017625-CH62-SW1 ”但无法创建“音乐用户令牌”来自商店工具包。请帮我。

0 投票
1 回答
1153 浏览

swift - AppleMusicKit SDK / 示例项目 - UserToken 问题

我目前正在试验Adding-Content-to-Apple-Music这里找到的代码:https ://developer.apple.com/musickit/

我正在使用:XCode 9 beta 2、iOS 11(iPhone 5s)

我有一个开发者令牌(当我查询 Apple Music API 搜索歌曲等时有效),但我现在想用它来交换一个用户令牌,这样我就可以对我的 Apple Music 帐户执行写入操作。

测试应用程序启动并允许我请求身份验证。从这里我可以看到:

  • MPMedia 库 - 授权
  • SKCloudServicesController - 授权
  • 能力:
    • 添加到云音乐库
    • 音乐目录播放

我的下一个明显步骤是使用开发者令牌来获取用户令牌。但是,一旦我调用以下内容:

cloudServiceController.requestUserToken(forDeveloperToken: developerToken, completionHandler: completionHandler)

我看到以下错误completionHandler - 任何人都可以帮忙吗?

2017-07-14 10:05:39.179300+0100 将内容添加到 Apple-Music[1326:172100] [MC] 从公共有效用户设置中读取。

2017-07-14 10:05:40.635503+0100 将内容添加到 Apple-Music [1326:172299] [核心]“从守护程序返回的错误:错误域 = com.apple.accounts 代码 = 9”(空) “”

2017-07-14 10:05:40.636449+0100 将内容添加到 Apple-Music [1326:172100] SSAccountStore:无法获取支持帐户。错误=错误域=com.apple.accounts 代码=9“(空)”

2017-07-14 10:05:40.800933+0100 将内容添加到 Apple-Music [1326:172297] [核心]“从守护进程返回的错误:错误域 = com.apple.accounts 代码 = 9”(空) “”

2017-07-14 10:05:40.801259+0100 将内容添加到 Apple-Music [1326:172299] SSAccountStore:无法获取支持帐户。error = Error Domain=com.apple.accounts Code=9 "(null)" 请求用户令牌时出错:操作无法完成。(SKErrorDomain 错误 1。)

Settings > iTunes & App Store我的设备上,我使用我的 Apple ID 登录。Apple Music 也是如此。

0 投票
1 回答
1140 浏览

ios - MPMusicPlayerController 不会寻求给定的播放时间

我希望 MPMusicPlayerController.applicationMusicPlayer() 实例从特定的开始时间开始播放:

但是一旦播放器开始播放该项目,它会将其 currentPlaybackTime 重置为零并从头开始:

我想可能是因为我将播放设置为刚刚创建但尚未准备好的播放器,但 .prepareToPlay() 或 .isPreparedToPlay() 都没有帮助我解决这种情况。

我什至尝试等待几秒钟,然后才从我设置的位置开始播放。根本没有成功,非常令人沮丧。

也许这与我直接播放 Apple Music 中的歌曲有关?我无法切换到 AVPlayer,因为我必须从 Apple Music 播放音乐。

将不胜感激任何想法和帮助!

更新:我在 MPMediaPlayback 找到了 beginSeekingBackward 方法,它说如果内容是流式传输的,它不会有任何效果: https ://developer.apple.com/documentation/mediaplayer/mpmediaplayback/1616248-beginseekingbackward?language= objc 似乎只有内置的音乐应用程序可以控制流媒体音乐播放?

0 投票
3 回答
1641 浏览

spotify - 如何在 Apple Music 上从 Spotify 获取相同的曲目/歌曲,反之亦然?

我正在构建一个简单的应用程序,用户可以在其中与朋友分享他们正在听的歌曲。如果用户是 Spotify 订阅者,他/她的朋友是 Apple Music 订阅者,并且 Spotify 用户正在分享歌曲,我如何在苹果目录中搜索相同的歌曲?是否有任何通用 ID,例如 Apple Music 上的 ISRC?还是有其他比较方法?我已经知道如何使用搜索歌曲/专辑等。问题是如何确保结果是来自 spotify 的同一首歌曲。有任何想法吗?谢谢!

0 投票
1 回答
579 浏览

ios - 以不同的音量同时播放两首受 DRM 保护的歌曲

我正在尝试MPMusicPlayerControllers在不同的音量下创建两种不同的效果。我可以创建一个MPMusicPlayerController并设置它的音量

然而现在MPMusicPlayerController.volume已经弃用了,我似乎无法找到一种方法来创建两个具有不同音量的 MPMusicPlayerControllers ......我正在寻找这样的东西

AVAudioPlayer由于受 DRM 保护的文件的限制,我无法使用。本质上,我正在尝试同时以不同的音量播放两个受 DRM 保护的音乐文件。

有什么方法可以MPMusicPlayerControllers在 iOS 10 或 11 中以不同的音量创建(或具有相同的效果)两首不同的歌曲(就像在同一个音量上播放两首不同的歌曲MPMusicPlayerController)?欢迎使用 Hacky 解决方法。

0 投票
1 回答
2944 浏览

apple-music - Apple MusicKit - 通过 Apple Music API 创建和编辑播放列表

我最近一直在使用新的 Apple MusicKit 功能。我有一个Developer Token并且Music-User-Token可以运行 Apple 提供的测试代码。

我想尝试做更多的事情,但文档似乎没有涵盖它。

据我所知(目前),用户令牌用于编辑专辑评分等内容,歌曲等

来源:https ://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/AppleMusicWebServicesReference/RateaAlbum.html#//apple_ref/doc/uid/TP40017625-CH78-SW1

问题一:

我想做的是创建一个播放列表(通过这个 API 而不是原生的 Objective-C/Swift)代码。

使用本机代码,播放列表 ID 是 GUID,但此 ID 似乎与播放列表的 Apple API ID 无关(格式化pl.u-[uniquereference]

问题2:

我还想检索我的播放列表列表。

有没有人这样做过?甚至可能吗?

0 投票
0 回答
180 浏览

ios - ios - 获取播放列表列表,使用 uuid 打开单个播放列表并获取共享 URL

我在 iOS/Apple Music/Playlists 上有点挣扎。我有能力:

  • 使用 UUID (GUID) 创建播放列表
  • 使用给定的 UUID 获取相同的播放列表
  • 列出我所有的播放列表

要获取我的播放列表列表:

通过 UUID 获取播放列表(其中metaData为空):

问题(第 1 部分):

我希望能够列出我的所有播放列表,然后理想地使用 UUID 获得其中一个,但似乎没有返回。我可以看到一个PersistentID但不能用于通过“获取”方法检索播放列表。

问题(第 2 部分):

我还希望能够检索给定播放列表的“共享”链接。这似乎根本不是一种访问方式。我是否认为它不能通过代码获得?