如何从shoutcast目录中获取XML站列表?

问题描述 投票:2回答:2

目前,我正从另一个在线广播源中获取我的广播应用中的数据,并通过实施以下步骤过滤结果:

 DDXMLNode* rootNode = [xmlDoc rootElement];
    NSArray* nodes = nil;
    nodes = [rootNode nodesForXPath:@"child::Station[Genres/Genre='POP']" error:nil];
    for(DDXMLNode* node in nodes)
    {
        Station* s = [[Station alloc] init];
        DDXMLNode* nameNode = [[node nodesForXPath:@"Name" error:nil] objectAtIndex:0];
        s.name = [nameNode stringValue];
        DDXMLNode* bitRateNode = [[node nodesForXPath:@"Streams/Stream/BitRate" error:nil] objectAtIndex:0];
        s.bitRate = [bitRateNode stringValue];
        DDXMLNode* streamNode = [[node nodesForXPath:@"Streams/Stream/StreamUrl" error:nil] objectAtIndex:0];
        s.streamURL = [streamNode stringValue];
        [array addObject:s];
    }

这将过滤掉所有其余部分,并且仅为我提供POP的站点。这与目前的电台很好用,但我需要能够从Shoutcast获得电台列表。我搜索过但找不到具体的地方来获取这个目录/ XML。我曾尝试进入shoutcast网站并“成为合作伙伴”,但我收到一条消息说他们正在制作下一版本的shoutcast并且不允许任何新的合作伙伴(尽管此消息已在去年出现)。是否有必要加入才能访问所有shoutcast工作站XML,以便我可以将它们集成到我的应用程序中?

我的最终结果需要是我有一个URL,让我可以从shoutcast /以及更新URL获取所有电台的列表,以便用户能够向下拖动并更新所有列表URL以确保它们工作。 (我已经用我当前的电台实现了刷新功能)

更新:通过查看API文档,您可以在这里找到:LINK他们似乎再次引用了Dev ID,但是这又引起了我之前提到的关于成为合作伙伴的内容

ios objective-c xml shoutcast icecast
2个回答
1
投票

唯一的方法是成为合作伙伴。


0
投票

要从电台列表或Shoutcast的API获取访问权限,您需要一个开发人员ID(DevID)。在您的合作伙伴请求获得批准后,此DevId将发送给您。

要成为合作伙伴,请在申请中说明您的提案。这是直接链接,https://www.shoutcast.com/Developer

© www.soinside.com 2019 - 2024. All rights reserved.