所以我有一个非常简单的问题,我不知道如何去做(这里的一切都是新的)。我正在开发一个我打算只使用自己的iPhone应用程序 - 所以现在想想:)让我说我的应用程序正在做的是每小时跟踪我的位置。我想做的就是能够在iphone上读取这些信息,比如在我的电脑上的文件上。如何将此信息从我的应用程序发送到个人计算机?我猜我需要在我的个人机器上设置一些服务器/数据库或其他东西?
有人可以帮忙快速一步一步地解决这个问题吗?我真的不知道从哪里开始...
谢谢!
答案 0 :(得分:3)
您只需要一个http服务器,然后您就可以在您的计算机上创建URL设置的HTTP GET / POST请求。您可以使用响应将数据发送回设备。
答案 1 :(得分:1)
在Mac上设置Ruby on Rails服务器。这是免费的,非常简单。 使用ASIHTTPRequest将数据发送到Ruby服务器。 http://allseeing-i.com/ASIHTTPRequest/
答案 2 :(得分:1)
如果您只需要来回获取数据,我相信您可以使用文件共享。这是一个如何设置的教程:
http://www.raywenderlich.com/1948/how-integrate-itunes-file-sharing-with-your-ios-app
它允许您查看iTunes中的文件,并在通过USB连接iPhone时来回复制它们。如果你需要做的只是将原始数据文件放到你的计算机上,这可能比仅仅为了传输文件而构建/运行完整服务器的开销要少得多。
答案 3 :(得分:1)
您需要有一个侦听器才能将数据发送到。例如,您可以在项目中设置一个通信类,它将负责作为应用程序之间的媒介。然后,您将在服务器或您的计算机上设置监听器,以监听请求。
iPhone> “通信类”>网络服务 (在这种情况下是.NET)
您可以使用NSURLConnection
对象来实现此目的。 E.g。
- (void) sendSomethingToServer:(NSString*)myData{
NSString*url = [[NSString alloc]initWithFormat: @"http://example.com/service.asmx/RecordData?myData='%@'", myData];
[self createRequest:url];
[url release];
}
http://example.com/service.asmx/RecordData
是您网络服务的位置和方法。
这是我创建的通用请求方法,它将标头设置为JSON包。
- (void) createRequest: (NSString*)urlFormatted {
NSLog(@"Request Sent");
NSURL *url = [NSURL URLWithString: urlFormatted];
NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL: url];
[request setHTTPMethod:@"GET"];
[request setValue:@"application/json; charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
}
在后端,在您的Web服务器上,您将拥有一个接收数据的方法。显然,您可以在服务器上使用任何您想要的技术。在这个例子中,我在Mono上使用.NET,例如
[WebMethod(Description = "Generic Client Data)]
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public string RecordData(string myData)
{
// Do something with data
}
答案 4 :(得分:0)
Apple可以帮助您入门。在文档中搜索“网络”,并使用您自己的协议开发双方的客户端。