iTunes Music Store Link Maker — 如何在我的应用程序中进行搜索?

2024-04-26

我正在编写一个音乐参考应用程序,并且对于每张专辑(从 last.fm 中提取)都希望链接到 ITMS(如果专辑在商店中)。

iTunes 链接制作器网络工具http://apple.com/itunes/linkmaker/ http://apple.com/itunes/linkmaker/非常适合获取已知专辑的链接,但我需要从我的应用程序内以编程方式访问它。

This NSLog 博客文章 http://nslog.com/2003/04/29/itms_links这是从 2003 年开始的,但当时最近在另一个问题中引用了这里 https://stackoverflow.com/questions/893604/how-to-link-to-the-itunes-store-from-iphone-app/893607#893607似乎提供了迄今为止我遇到的唯一解决方案,建议将查询提交到:

phobos.apple.com/WebObjects/MZSearch.woa/wa/advancedSearchResults?

在其前面加上“itms://”,该链接将在 iTunes 中工作,在其前面加上“http://”,该链接将在 Camino 中工作(Safari 有时会返回格式错误的 XML 错误)。

重要的标签如下:

  • SongTerm - 歌曲标题
  • ArtistTerm - 艺术家姓名
  • albumTerm - 专辑名称
  • ComposerTerm - 作曲家姓名
  • 术语 - 所有字段

建议使用 http:// 而不是 itms://,服务器将返回结果的 XML 文档,而不是打开 iTunes,但无论哪种方式,我都会直接发送到 iTunes。

是否可以取回结果列表?


我正在使用 Link Maker 获取有关我正在播放的歌曲的 iTunes 详细信息。 为此,我发现 Link Maker 能够返回 json 数据,并且一次返回 1 个结果。

我正在使用此网址来执行我的查询:

"

以下是您需要提供的参数:

> country : store country term : could
> contains artist name, song name, album
> media : music

例如,如果您想了解“U2”演唱的一首名为“One”的歌曲的详细信息,以下是正确的 URL:

然后你会收到这样的json数据:

{
 "resultCount":1,
 "results": [
{"wrapperType":"track", "mediaType":"song", "artistName":"U2", "itemParentName":"Achtung Baby", "itemParentCensoredName":"Achtung Baby", "itemCensoredName":"One", "itemName":"One", "artistLinkUrl":"http://itunes.apple.com/us/artist/u2/id78500?uo=4", "artworkUrl60":"http://a1.phobos.apple.com/us/r1000/009/Features/32/9a/60/dj.mfynlttx.60x60-50.jpg", "artworkUrl100":"http://a1.phobos.apple.com/us/r1000/009/Features/32/9a/60/dj.mfynlttx.100x100-75.jpg", "country":"USA", "currency":"USD", "discCount":1, "discNumber":1, "itemExplicitness":"notExplicit", "itemLinkUrl":"http://itunes.apple.com/us/album/one/id368713?i=368617&uo=4", "itemPrice":"1.29000", "itemParentExplicitness":"notExplicit", "itemParentLinkUrl":"http://itunes.apple.com/us/album/one/id368713?i=368617&uo=4", "itemParentPrice":"9.99000", "previewUrl":"http://a1.phobos.apple.com/us/r1000/019/Music/b6/8c/c5/mzm.epegonxg.aac.p.m4a", "primaryGenreName":"Rock", "trackCount":12, "trackNumber":3, "trackTime":276042}]
}

然后您需要解码这些 JSON 数据。

NSDictionary *jsonResultsParsed = [jsonResults JSONValue];

最后得到你想要的:

NSDictionary *songDetailsDict = [[jsonResultsParsed objectForKey:@"results"] objectAtIndex:0];

如果您想确定用户的国家/地区,您需要使用其区域设置来确定其国家/地区,这是我正在使用的代码:

- (NSString *)getUserCountry
{
    NSLocale *locale = [NSLocale currentLocale];
    return [locale objectForKey: NSLocaleCountryCode];
}

希望这可以帮助。

Thierry

编辑:最后有一个文档可用:

http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iTunes Music Store Link Maker — 如何在我的应用程序中进行搜索? 的相关文章

  • 处理 UIPageControl 有太多点而无法全部显示在屏幕上的最佳方法是什么

    我的应用程序中有一个 UIPageControl 大约有 10 个页面 点 看起来非常完美 但是用户可以添加许多不同的视图 因此点的数量可能会变成 30 个 发生这种情况时 点就会从屏幕边缘消失 并且您始终无法看到当前选定的页面 这一切看起
  • iPhone - 让 VoiceOver 宣布标签文本更改

    如果标签上的文本发生更改 是否可以使用 iPhone 上的 VoiceOver 来宣布更新后的文本 这类似于 ARIA 中的实时区域 Thanks 您可以使用 VoiceOver 朗读您喜欢的任何文本 UIAccessibilityPost
  • 在 iPhone 中创建视频

    我需要将图像序列 即 png 转换为 iPhone 中的视频文件 我如何将图像转换为视频 Regards 只需忽略 使用 ffmpeg 等不好的建议即可 这可以在桌面上运行 但是许可证问题 http multinc com 2009 08
  • 为 iPhone 5 扩展应用程序 - 最佳实践

    现在Apple即将开始发货 iPhone 5 我正在考虑扩展我的应用程序 以便它们在 iPhone 5 上全屏显示iPhone 5 我在模拟器上运行我的应用程序 甚至是那些带有UITableView延伸至屏幕底部 屏幕顶部和底部出现黑条 这
  • 如何在两个不同的视图控制器之间传递信息?

    这是一个简单的问题 我有 2 个不同的视图控制器 每个视图控制器都有自己的数据存储在其 m 文件中 我想取一个值 例如 一个整数值 int i 3 在 ViewController 1 中声明并将其传递给 ViewController 2
  • 有没有办法可以将 iPhone 屏幕捕获为视频? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我希望能够将 iPhone 屏幕捕获为视频 但我不确定执行此操作的最佳方法 谁能帮助指导我如何最好地做到这一点没有越狱 简而言之 这是我的
  • 如何跳过压缩一张 PNG?

    注意 我已经解决了这个问题 但花了很长时间才在这里发布问题 答案 Xcode 构建过程在构建时 优化 我的 PNG 这通常不是问题 但以这种方式处理的 iTunesArtwork 会导致其损坏 以致 iTunes 无法显示它 我怎样才能防止
  • 使用 UIWebview 导航 Pdf 在 IOS 5 中不起作用

    我最近升级到 Xcode 4 我发现一个运行良好一年多的应用程序现在无法在 Ios 5 下运行 该应用程序在 UIWebview 中导航 Pdf 并使用以下代码移动到其中的任何页面pdf self pdfNavigateController
  • iphone总是返回UIInterfaceOrientationPortrait

    我需要确保当我的UIViewController负载 它根据需要旋转 我已经实施了shouldAutorotateToInterfaceOrientation方法及其所有工作正常 除非应用程序首次加载时 当 iphone 处于横向模式时 或
  • 以编程方式创建 UILabel

    我通过代码执行了以下操作 UILabel label UILabel alloc initWithFrame CGRectMake 40 70 300 50 label backgroundColor UIColor clearColor
  • 是否需要 AudioServicesDisposeSystemSoundID?

    我最近开始使用 AudioToolbox 框架 并注意到有一个名为AudioServicesDisposeSystemSoundID 只是想知道 调用的时候不调用上面的方法是不是内存泄漏AudioServicesCreateSystemSo
  • 将附件视图按钮添加到 MKMapView 调出注释?

    我最近遇到过这个网站 http www everydayone com 2009 08 mapkit annotation with buttons example 我一直在尝试向我的呼出视图添加一个按钮 来自图像 网站示例上的代码工作得很
  • 将秒整数转换为 HH:MM,iPhone

    我正在为此苦苦挣扎 我想以 HH MM 格式在标签中显示一个以秒为单位的值 我在互联网上搜索了很长时间并找到了一些答案 但要么没有完全理解它们 要么它们看起来像是一种奇怪的做我想做的事情的方式 如果有人能帮助我解决这个问题 那就太好了 请记
  • 加速度计和校准 - iPhone SDK

    我需要在 iPhone 游戏中使用加速计的功能 我只需通过倾斜设备来移动图像即可 然而 YouTube 上的大多数视频仅显示以某种方式反转的倾斜功能 而忘记包含校准 我希望用户将他们的设备校准到他们所处的任何位置 有谁知道我应该如何开始 我
  • Xamarin.iOS 上的 MakeGenericMethod/MakeGenericType

    我试图弄清楚从 Xamarin 部署 iOS 时这些限制的真正含义 http developer xamarin com guides ios advanced topics limitations http developer xamar
  • iOS后台Location不发送http请求

    我的应用程序需要在后台跟踪用户位置 但无法发送 获取 请求 当应用程序到达前台时 http 请求会立即发送 我正在使用 RestKit 来处理所有网络请求 并且遵循本教程 http www mindsizzlers com 2011 07
  • 如何将NSDate转换为unix时间戳iphone sdk?

    如何转换NSDate转换为 Unix 时间戳 我读过很多相反的帖子 但我没有找到与我的问题相关的任何内容 我相信这是您正在寻找的 NSDate 选择器 NSTimeInterval timeIntervalSince1970
  • 计算MKPolyline路径的距离?

    我想获取 MKPolyline 路径的米数 以便我可以告诉用户完成路径还剩多少米 我一直在寻找一些东西来做这件事 但我什么也没得到 Thanks 尽管听起来很乏味 但除非您想自己进行数学计算 否则您可能必须迭代该行的思想points 将每个
  • 更改 NSManagedObject 属性而不触发委托方法?

    有什么方法 或技巧 可以修改NSManagedObject目前由一名代表持有NSFetchedResultsController不触发didChangeObject and controllerWillChangeContent 委托方法
  • 如何在 Azure 中调试测试发送?

    I am trying to setup a successfull push notifications between my Net backend and ios client in azure I followed this htt

随机推荐