iPhone用户代理

时间:2012-05-17 12:54:39

标签: iphone ios xcode cocoa

我使用以下内容在通用iOS应用中获取内容:

NSString stringWithContentsOfURL: [ NSURL URLWithString: link ]

...是否将iPhone / iPad用户的IP和User-Agent发送到从中提取内容的服务器?

需要它至少发送用户代理,以便我可以检测它是iPhone还是iPad并相应地优化内容。

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码通过手动指定要使用的设备来确保设备正在发送用户代理。

修改后的引用来自:https://stackoverflow.com/a/1533032/716216

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
{
    NSString* userAgent = @"Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10";
    NSURL* url = [NSURL URLWithString:@"http://www.myWebSite.com/"];
    NSMutableURLRequest* request = [[[NSMutableURLRequest alloc] initWithURL:url]
                                    autorelease];
    [request setValue:userAgent forHTTPHeaderField:@"User-Agent"];

    NSURLResponse* response = nil;
    NSError* error = nil;
    NSData* data = [NSURLConnection sendSynchronousRequest:request
                                         returningResponse:&response
                                                     error:&error];
}

注意:我列出的示例用户代理可能已过时,您可能需要找一个更新的。