私はオーディオ プレーヤーを持っており、ストリーミングの URL を含むスタートアップ アプリにダウンロードされる xml ファイルを作成したので、ストリーミング サーバーの IP に変更があった場合は、アプリを更新することなく xml を変更します。
XML のパス: http://xxxx.com.br/data_streamer/data_streaming.php
xml がダウンロードされ、パスが正しく読み取られますが、ストリーミングが初期化されていません。 211.74:8090") をパーサーで使用することはまったく同じです。
XML パーサー (タグを読み取る部分のみを示します);
- (Void) parser: (NSXMLParser *) parser didStartElement: (NSString *) elementName
namespaceURI: (NSString *) namespaceURI qualifiedName: (NSString *) qname
attributes: (NSDictionary *) {attributeDict
if (qname) {
QName elementName =;
}
if (elementName) {
current = [NSString stringWithString: elementName];
}
if ([elementName isEqualToString:@"url"]) {
}
}
- (Void) parser: (NSXMLParser *) parser didEndElement: (NSString *) elementName
namespaceURI: (NSString *) namespaceURI qualifiedName: (NSString *) {QName
if ([current isEqualToString:@"url"]) {
[Outstring AppendFormat:@"%@",@"\n"];
}
current = nil;
}
- (Void) parser: (NSXMLParser *) parser foundCharacters: (NSString *) string {
if (! current)
return;
if ([current isEqualToString: @"url"]) {
[Outstring AppendFormat: @"%@", string];
}
}
今、私のストリーミングを呼び出すコード:
- (Void) createStreamer {
NSLog (@"%@", pathDataString)
if (streamer)
{
return;
}
[DestroyStreamer self];
NSString * = escapedValue
[(NSString *) CFURLCreateStringByAddingPercentEscapes (
nil,
(CFStringRef)pathDataString,
NULL,
NULL,
kCFStringEncodingUTF8)
autorelease];
NSURL * url = [NSURL URLWithString: escapedValue];
streamer = [[AudioStreamer alloc] initWithURL: url];
}
pathDataString には、デバッグで内容がテストされた術後の IP サーバーが含まれています
何が起こっているのかわかりません。何かアイデアはありますか?