ヒントとコツ:iPhoneでユーザーエージェントを変更する

ご存じのように、ユーザーエージェントは、ユーザーを「識別する」ために、より具体的には、ユーザーがサイトを訪問するクライアントまたはデバイスを決定するために必要です。 これに応じて、必要なコンテンツ(データ、マークアップ)を「置換」できます。 これは、モバイルデバイスの大幅な成長のため、最近関連しています。



iPhone Dev Tips&Tricksトピックの続きで、ユーザーエージェントを「iPhone」に変更する方法についてお話します。







ユーザーエージェントに敏感なコンテンツを取得するには(特定の場合、XMLファイルを取得する必要があります)、次のコードを実行する必要があります。



NSURL *url = [[NSURL alloc] initWithString:@"http://domain.com/SomeXml.xml"];

NSHTTPURLResponse *response;

NSError *error;

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];

[request setValue:@"Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)" forHTTPHeaderField:@"User-Agent"];

NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];








ご覧のとおり、問題を解決するには、リクエスト(NSMutableURLRequest)に対してsetValue:forHTTPHeaderFieldを使用する必要があります。



NSXMLParserに結果のXMLを使用する必要があるため、特定のタスクではNSDataを使用しました。



NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:data];

NSLog(@"XML is downloaded.");







All Articles