4.13 创建一个Socket客户端 [iOS开发中的神兵利器]
1. 本节课将为您演示套接字的使用。首先打开浏览器,并进入当前的页面,然后点击此处的下载按钮。

2. 接着在弹出的窗口中,点击下载压缩包按钮,下载项目的源码。

3. 压缩包下载之后,将被自动解压成一个文件夹。点击源码文件夹左侧的箭头,显示该文件夹下的所有文件。



6. 在按下快捷键的同时,选择另一个文件,以同时选择多个文件。


8. 在弹出的文件导入确认窗口中,点击完成按钮,确认文件的导入。


10. 导入文件之后,现在开始编码,实现套接字在客户端的功能。


12. 初始化一个按钮控件,当点击该按钮时,向服务器端发送数据。







19. 初始化一个数据传输的客户端对象,并指定IP地址和端口号。

20. 通过调用客户端对象的连接方法,并设置超时的时限,接着通过一个元组,获得返回的结果。


22. 连接成功之后,调用客户端对象的发送方法,向服务器发送一个字符串,同样用元组存储服务器返回的信息。


24. 接着调用客户端对象的读取方法,从服务器读取指定数量的内容。




28. 接着添加一个警告动作的按钮,当点击该按钮时,关闭弹出窗口。

29. 将警告动作按钮添加到警告窗口中,然后在当前的视图控制器,打开警告窗口,以显示来自服务器的信息。

30. 当传送数据失败时,同样使用警告窗口,显示错误的信息。

31. 接着添加一个警告动作的按钮,当点击该按钮时,关闭弹出窗口。


33. 然后在当前的视图控制器,打开警告窗口,以显示来自服务器的信息。


35. 接着添加一个警告动作的按钮,当点击该按钮时,关闭弹出窗口。


37. 最后在当前的视图控制器,打开警告窗口,以显示来自服务器的错误连接信息,从而完成客户端所有的代码。在下一节课,您将实现服务器端口的代码。

本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载
