将GPS坐标从我的iPhone传递到Web服务,然后在地图上显示GPS坐标 [英] Passing GPS coordinates from my iPhone to a web service and displaying the GPS coordinates on a Map

查看:71
本文介绍了将GPS坐标从我的iPhone传递到Web服务,然后在地图上显示GPS坐标的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试创建一个应用程序,该应用程序可以获取iPhone的GPS坐标并在地图上显示我的当前位置.

I am trying to create an App which takes the GPS co-ordinates of my iPhone and displays my current position on the Map.

我已经使用LocateMe示例代码从我的iPhone中获取了GPS坐标,所以现在这对我来说不是问题.

I have got the GPS co-ordinates from my iPhone using LocateMe Sample code, so now that is not a problem for me.

但是我不知道如何将我的GPS坐标从iPhone发送到网络服务,以及如何在地图上显示GPS坐标.如果你们能帮助我解决这个问题,那就太好了.

But I don't know how to send my GPS co-ordinates from my iPhone to a web service and display the GPS co-ordinates on a Map. It would be nice if you guys could help me out with this issue.

推荐答案

您可能需要按以下方式使用nsurlconnection类(您只需要在NSURLRequest中设置requestWithUrl参数即可,该参数是Web服务特定的url):

You'll probably want to use the nsurlconnection class as follows (you'll just need to set the requestWithUrl parameter in the NSURLRequest which the web-service specific url):

-(void)getLocationsFromWebService {
    NSLog(@"in getLocationsFromWebService");


    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:TRUE];


    NSURLRequest *theRequest = [NSURLRequest requestWithURL:self.locationsURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:100.0];

    NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
    self.requestType = @"GET";
    if (theConnection) {
        _responseData = [[NSMutableData data] retain ];
    } else {

        [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:FALSE];
    }
}
-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {

    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:FALSE]; 
    NSLog(@"in mapviewcontroller");
    NSLog(@"Error connecting - %@",[error localizedDescription]);
    [connection release];
    [_responseData release];
}

-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {

    NSHTTPURLResponse *HTTPResponse = (NSHTTPURLResponse *)response;
    NSInteger statusCode = [HTTPResponse statusCode];

    if (404 == statusCode || 500 == statusCode) {
        //[self.controller setTitle:@"Error Getting Parking Spot ....."];
        [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:FALSE];

        [connection cancel];
        NSLog(@"Server Error - %@", [NSHTTPURLResponse localizedStringForStatusCode:statusCode]);
    } else {
        if ([self.requestType isEqualToString:@"GET"])
            [_responseData setLength:0];
    }
}

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    if ([self.requestType isEqualToString:@"GET"])
        [_responseData appendData:data];
}

-(void) connectionDidFinishLoading:(NSURLConnection *)connection {

    if ([self.requestType isEqualToString:@"GET"]) {
        [self parseLocations:_responseData];
        [_responseData release];
    }
    [connection release];

}

这篇关于将GPS坐标从我的iPhone传递到Web服务,然后在地图上显示GPS坐标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆