现在我正处于大学项目的中间,关于IPhone-Development。 该项目包括一个带有mysql数据库和多个客户端(IPhone设备)的网络服务器。
我在基本的cocept上苦苦挣扎,这是在IPhone和Webserver之间的通信(接收,发送数据)。
我已经建立了一个带有MYSQL数据库的Web服务器。我还有一个访问数据库的PHP脚本,并将db-Data写入XML文件。
1)继续使用客户端(IPhone)的最佳方式是什么?
2)是否可以直接访问.php文件并将XML下载到iPhone?
3)什么将下载到iPhone?整个XML-File还是XML-Content?
然后我将继续使用XML-Parser(最好是NSXMLParser)处理XML文件。
4)如何将接收到的数据永久存储在iPhone上? NSMutableArray里?如果在iPhone设备上添加了任何数据,则离线模式需要此功能。
这让我想到了我的最后一个问题:
5)如何将数据发送回网络服务器?或者更具体地说,我必须使用哪种数据结构将数据发送回网络服务器?这样做的合理方法是什么?例如:创建一个新的XML文件并将其发送回网络服务器?
最诚挚的问候, 亚历
答案 0 :(得分:1)
数据协议必须是XML吗?我选择JSON作为数据协议! 如果您使用JSON是可行的,那么请查看轻量级SBJson框架。相信我,对iOS使用JSON而不是XML要容易得多!
总结其他问题,关于服务器通信等! 您是从头开始编写网络代码还是允许使用现有的开放框架的强制性前提条件?如果您可以使用框架,那么f.e.看看MKNetworkKit!它将带走几乎所有写入或合并自己的网络代码所带来的麻烦,它已经内置了JSON序列化/反序列化!
如果没有,那么请使用NSURLConnection,NSURLResponse和一些NSOperation / NSOperationQueue进行异步处理,并享受一些乐趣! :-) 不要忘记来自Apple的Reachability.h / m! ; - )
对于设备上的数据持久性,请使用CoreData,这是非常强大的,但mybe(关于复杂性)的大量开销用于您的目的。或者只需将您的内容存储在/ NSUserDefaults中!