【发布时间】:2014-09-24 22:13:03
【问题描述】:
我已经构建了一个显示带有背景音乐的视频的应用程序,用户可以添加要在视频旁边显示的歌曲的元数据(艺术家、标题、专辑、流派)。
现在我想让观众在 iTunes 中购买这首歌。
我查询 iTunes 搜索 (https://itunes.apple.com/search) 以获取打开特定歌曲的链接,这在 95% 的情况下都很好用。我通过比较返回的艺术家和歌曲标题来验证结果,以确保我不会将用户指向“误报”歌曲。
如果我找不到完美匹配,我想打开 iTunes 并在歌曲字段中预先填写标题和艺术家。而且我很难让它发挥作用。
到目前为止,我最大的努力是打开 itms://search.itunes.apple.com/WebObjects/MZSearch.woa/wa/search 并添加 ?term=My+keywords&media=music&entity=song 以打开 iTunes 搜索显示的视图已经填写了“我的关键字”,但不幸的是搜索词被弄乱了,显示为(“我的关键字”),包括引号和括号。
这是我正在使用的代码:
NSString* baseURLString2 = @"itms://search.itunes.apple.com/WebObjects/MZSearch.woa/wa/search";
NSString* searchUrlString2 = [NSString stringWithFormat:@"%@?term=%@&media=music&entity=song", baseURLString2, searchTerm];
searchUrlString2 = [searchUrlString2 stringByReplacingOccurrencesOfString:@" " withString:@"+"];
searchUrlString2 = [searchUrlString2 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL* searchUrl2 = [NSURL URLWithString:searchUrlString2];
dispatch_async(dispatch_get_main_queue(), ^{
[[UIApplication sharedApplication] openURL:searchUrl2];
});
这是 searchUrlString2 的示例:
itms://search.itunes.apple.com/WebObjects/MZSearch.woa/wa/search?term=J+Cole+Trouble&media=music&entity=song
当我使用 https 而不是 itms 时,它在我的 MacBook 上的浏览器中运行良好,但在 iOS 8 上的 iTunes 中仍然相同。
关于如何解决这个问题的任何想法? 或者你能给我指出一个很好的文档吗?
提前致谢 斯文
【问题讨论】:
标签: ios objective-c itunes