|
@@ -588,14 +588,18 @@ static inline void wd_playControl_queue(void (^block)(void)){
|
|
|
- (NSDictionary *)parsePlayInfoString:(NSString *)playInfoXmlString{
|
|
|
NSMutableDictionary *resultDic = [NSMutableDictionary dictionaryWithDictionary:[NSDictionary mkr_dictionaryWithXML:playInfoXmlString]];
|
|
|
NSString *metaDataString = [resultDic objectForKey:@"TrackMetaData"];
|
|
|
- metaDataString = [metaDataString stringByReplacingOccurrencesOfString:@"&" withString:@"mkr_***"];
|
|
|
- NSDictionary *metaDic = [NSDictionary mkr_dictionaryWithXML:metaDataString];
|
|
|
- NSDictionary *metaItemDic = metaDic[@"item"];
|
|
|
- if (![metaItemDic isKindOfClass:NSDictionary.class]) {
|
|
|
- metaItemDic = @{};
|
|
|
+ if ([metaDataString isKindOfClass:NSString.class]) {
|
|
|
+ metaDataString = [metaDataString stringByReplacingOccurrencesOfString:@"&" withString:@"mkr_***"];
|
|
|
+ NSDictionary *metaDic = [NSDictionary mkr_dictionaryWithXML:metaDataString];
|
|
|
+ NSDictionary *metaItemDic = metaDic[@"item"];
|
|
|
+ if (![metaItemDic isKindOfClass:NSDictionary.class]) {
|
|
|
+ metaItemDic = @{};
|
|
|
+ }
|
|
|
+ [resultDic setObject:metaDic[@"item"]?:@{} forKey:@"TrackMetaData"];
|
|
|
+ return resultDic;
|
|
|
+ }else{
|
|
|
+ return nil;
|
|
|
}
|
|
|
- [resultDic setObject:metaDic[@"item"]?:@{} forKey:@"TrackMetaData"];
|
|
|
- return resultDic;
|
|
|
}
|
|
|
|
|
|
- (id <MKRRadioResorce>)getPlayingStatusWithDevice:(id <MKRUPnPDevice>)device {
|