首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用iOS上的Houndify SDK访问音乐元数据

如何使用iOS上的Houndify SDK访问音乐元数据
EN

Stack Overflow用户
提问于 2016-05-27 11:51:00
回答 1查看 226关注 0票数 0

我正在使用Houndify SDK的1.05版本,以及他们的演示应用程序。我正在执行声音搜索音乐,并努力了解如何从Houndify响应中提取Spotify轨道ID。

Houndify使用HoundDataHoundServer的一个对象进行响应,他们的示例显示了对口头响应的处理,如下所示:

代码语言:javascript
复制
HoundDataCommandResult* commandResult = response.allResults.firstObject;
self.responseTextView.text = commandResult.writtenResponse;

接下来,它会像这样抛出所有的响应:

代码语言:javascript
复制
NSDictionary* nativeData = commandResult[@"NativeData"];
NSLog(@"NativeData: %@", nativeData);

在一个示例转储中,它从NSLog中显示如下:

代码语言:javascript
复制
NativeData: {
    EntitySpecificationType = Explicit;
    MusicCommandNativeDataKind = MusicSearchCommandNativeData;
    OrderToDisplay =     (
        Track,
        Artist,
        Album
    );
    SearchParameters =     {
        MusicSearchTargetType = "MUSIC_SEARCH_TARGET_TYPE_TOP";
        SearchCriteriaType = SearchForTracks;
    };
    Tracks =     (
                {
            AlbumDate = "2009-11-20";
            AlbumID = 300117215516977013;
            AlbumName = "The Fame Monster";
            ArtistID = 200346971627324820;
            ArtistName = "Lady Gaga, Beyonc\U00e9";
            AudioPreviewURL = "http://www.amazon.com/gp/dmusic/aws/sampleTrack.html?clientid=SoundHound&ASIN=B002X07TMC";
            AutoPlayPreview = 1;
            BuyLinks =             (
                                {
                    Store = PlayStore;
                    URL = "https://play.google.com/store/music/album?id=B5t7w66ic4dqvfzfg3lse6v7ncy&tid=song-Tr6zlzmvtxg3bnfhlgyeglwgr24&PAffiliateID=111l3po";
                },
                                {
                    Store = ITunes;
                    URL = "https://itunes.apple.com/us/album/telephone-feat.-beyonce-passion/id382900899?i=382901246&uo=4&at=10lIs&ct=t-100236021077260375_62000USd";
                }
            );
            LyricsURL = "http://www.google.com/m?q=lyrics+Telephone+Lady+Gaga";
            MusicThirdPartyIds =             (
                                {
                    DeepLinks =                     (
                        "spotify:track:1IaYWv32nFFMdljBIjMY5T"
                    );
                    Ids =                     (
                        "spotify:track:1IaYWv32nFFMdljBIjMY5T"
                    );
                    MusicThirdParty =                     {
                        Name = Spotify;
                    };
                },
                                {
                    DeepLinks =                     (
                        "https://itunes.apple.com/us/album/telephone-feat.-beyonce-passion/id382900899?i=382901246&uo=4&at=10lIs&ct=listen_on_apple_music&app=music"
                    );
                    Ids =                     (
                        382901246
                    );
                    MusicThirdParty =                     {
                        Name = AppleMusic;
                    };
                },
                                {
                    DeepLinks =                     (
                    );
                    Ids =                     (
                        382901246,
                        52725806,
                        25273502
                    );
                    MusicThirdParty =                     {
                        Name = Default;
                    };
                },
                                {
                    DeepLinks =                     (
                        "pandorav2:/createStation?artist=Lady+Gaga&song=Telephone&type=artist&partnerCode=2&trackingCode=x-009427-0035-1149&adId="
                    );
                    Ids =                     (
                    );
                    MusicThirdParty =                     {
                        Name = Pandora;
                    };
                }
            );
            PreviewLinks =             (
                                {
                    Source = itunes;
                    Url = "http://a1638.phobos.apple.com/us/r2000/020/Music/v4/fb/0a/3b/fb0a3b7b-c144-6d87-ffa7-10946e9bf255/mzaf_5123017562781646582.aac.m4a";
                },
                                {
                    Source = itunes;
                    Url = "http://a1638.phobos.apple.com/us/r2000/020/Music/v4/fb/0a/3b/fb0a3b7b-c144-6d87-ffa7-10946e9bf255/mzaf_5123017562781646582.aac.m4a";
                },
                                {
                    Source = itunes;
                    Url = "http://a1638.phobos.apple.com/us/r2000/020/Music/v4/fb/0a/3b/fb0a3b7b-c144-6d87-ffa7-10946e9bf255/mzaf_5123017562781646582.aac.m4a";
                }
            );
            TrackID = 100236021077260375;
            TrackName = Telephone;
        }
    );
    UserRequestedAutoPlay = 1;
}
2016-05-27 12:42:24.604 HoundifySDK Test Application[5834:2094266] {
    DeepLinks =     (
        "spotify:track:1IaYWv32nFFMdljBIjMY5T"
    );
    Ids =     (
        "spotify:track:1IaYWv32nFFMdljBIjMY5T"
    );
    MusicThirdParty =     {
        Name = Spotify;
    };
}

我尝试使用以下方法访问spotify ID:

代码语言:javascript
复制
NSDictionary *test = commandResult[@"NativeData"][@"Tracks"][0][@"MusicThirdPartyIds"][0];

但是,尽管NSLog在使用上面的测试变量提取SpotifyID时,在“跟踪”下显示了它的键和值,但是SpotifyID的键报告如下(在xcode中):

代码语言:javascript
复制
test    __NSDictionaryM *   3 key/value pairs   0x000000013d5aa910
[0] = (no summary) : @"1 element"   
[1] @"MusicThirdParty" : 1 key/value pair   
[2] (no summary) : @"1 element" 

所以我想要的关键是“不总结”:

代码语言:javascript
复制
[2] (null)  (no summary) : @"1 element" 
    key NSTaggedPointerString * 0xa000000007364493
    value   __NSArrayM *    @"1 element"    0x000000013d5aaca0
        [0] __NSCFString *  @"spotify:track:1IaYWv32nFFMdljBIjMY5T" 0x000000013d5aad50

我显然误解了我应该如何访问这些数据。有谁能告诉我吗?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-27 17:20:26

您可以尝试如下: commandResult@"NativeData";

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37482809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档