7、Libgdx网络操作

(官网:www.libgdx.cn

Libgdx包含了一些跨平台的网络操作类,这些类在Gdx.net中。

特性

  • 跨平台HTTP请求
  • 多平台TCP C/S Socket支持(可配置)
  • TCP C/S优化
  • 跨平台浏览器访问

说明

  • Net.java 跨平台网络接口。通过这里获取网络交互的对象。
  • Socket.java是一个提供远程socket地址,连接状态的接口。
  • SocketHints.java是一个创建TCP服务端接口。提供了标准的accept()方法获取已连接的TCP客户端。
  • ServerSocketHints.java是一个配置TCP服务器socket的类。
  • HttpStatus.java是一个查看网络状态的类。
  • HttpParameterUtils.java是一个提供了HTTP请求的工具方法。
  • HttpRequestBuilder创建HttpRequests的类。

创建一个TCP客户端,可以使用以下的代码:
Socket socket = Gdx.net.newClientSocket(Protocol protocol, String host, int port, SocketHints hints);
创建一个TCP服务器端可以使用如下代码:
ServerSocket server = Gdx.net.newServerSocket(Protocol protocol, int port, ServerSocketHints hints);
发送HTTP请求:
HttpRequestBuilder requestBuilder = new HttpRequestBuilder();
HttpRequest httpRequest = requestBuilder.newRequest().method(HttpMethods.GET).url("http://www.google.de").build();
Gdx.net.sendHttpRequest(httpRequest, httpResponseListener);

打开系统浏览器,可以使用如下代码:
Gdx.net.openURI(String URI)

注意

不同平台使用时需要注意。
1、TCP 客户端和服务端不同在GWT中使用。原因是java.net不支持GWT。
2、在有些平台不支持打开系统浏览器,因为特定平台的限制。
3、在Android中,必须在AndroidManifest.xml文件中声明访问网络的权限:
<uses-permission android:name="android.permission.INTERNET" />
4、在Android中,在没禁用StrictMode时不能再主线程中访问网络。防止阻塞主线程。
5、在移动网络中注意流量
6、支持网络配置
7、电量可能在数据传输时耗尽。
8、Content-Type设置为POST。
www.libgdx.cn版权所有,如需转载,注明出处)

时间: 2024-10-12 07:08:14

7、Libgdx网络操作的相关文章

Android网络操作常用的两个类

Android SDK集成了Apache HttpClient模块.要注意的是,这里的Apache HttpClient模块是 HttpClient 4.0(org.apache.http.*),而不是常见的 Jakarta Commons HttpClient 3.x (org.apache.commons.httpclient.*). HttpClient常用 HttpGet和HttpPost这两个类,分别对应Get方式和Post方式. 无论是使用HttpGet,还是使用HttpPost,都

PHP网络操作函数汇总

  这篇文章主要介绍了PHP网络操作函数汇总,本文列举了如gethostbyaddr.gethostbyname.header_remove.http_response_code.ip2long等网络中经常用到的函数,需要的朋友可以参考下 checkdnsrr - 给指定的主机(域名)或者IP地址做DNS通信检查 closelog - 关闭系统日志链接 define_syslog_variables - 初始化所有syslog相关变量 dns_check_record - checkdnsrr别

Swift HTTP网络操作库Alamofire实现文件上传详解

六,使用Alamofire进行文件上传 1,Alamofire支持如下上传类型: File Data Stream MultipartFormData 2,使用文件流的形式上传文件 let fileURL = NSBundle.mainBundle().URLForResource("hangge", withExtension: "zip")   Alamofire.upload(.POST, "http://www.hangge.com/upload.

Qt之高级网络操作(HTTP/FTP快速上手)

简述 Qt Network 模块中提供了一些高级别的类,例如:QNetworkRequest.QNetworkReply 和 QNetworkAccessManager,使用常见的协议执行网络操作. 在分享的过程中,顺便介绍下 Fiddler,便于我们调试.Fiddler 是一个 HTTP 协议调试代理工具.当然,也可以使用其它 Web/HTTP 调试工具. 简述 HTTP 消息结构 支持的协议 请求 传递 URL 参数 代理 更加复杂的 POST 请求 定制请求头 响应内容 响应状态码 响应头

Swift HTTP网络操作库Alamofire实现文件下载,断点续传例子

七,使用Alamofire进行文件下载 1,自定义下载文件的保存目录 下面代码将logo图片下载下来保存到用户文档目录下(Documnets目录),文件名不变. Alamofire.download(.GET, "yun_qi_img/logo.png") {     temporaryURL, response in     let fileManager = NSFileManager.defaultManager()     let directoryURL = fileMana

数据中心网络操作的可视化之路

众所周知,数据中心网络设备都是采用的命令行操作界面(CLI),这种方式需要操作者有着非常专业的技术知识才能使用,而不像Windows可视化的系统,交互界面友好,操作方便.网络设备从以太网技术出现发展到现在几十年,却从来没有真正实现图形化的界面,原因何在呢?本文将带领大家去探求数据中心网络设备操作的可视化之路.PC诞生之初也是采用的命令行操作界面,随着图形化技术的发展,CPU.内存.显卡等部件处理能力的提升,可视化的操作界面成为PC的主流,尤其是Windows系统.Linux系统则两者兼具,以命令

linux下常用网络操作汇总 专题

centos 更改主机名,需要更改的几个地方: (1) /etc/sysconfig/network  //更改主机名(2)/etc/hostname  //更改主机名(3) /etc/hosts  //更改本机ip和主机名的映射关系   IP: ifconfig gateway: [root@localhost ~]# netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt If

linux网络操作相关命令汇总_unix linux

linux操作相关命令汇总的github地址:https://github.com/zhwj184/shell-work 复制代码 代码如下: #/bin/sh #查看http请求的header tcpdump -s 1024 -l -A -n host 192.168.9.56 tcpdump -s 1024 -l -A src 192.168.9.56 or dst 192.168.9.56 sudo tcpdump -A -s 1492 dst port 80 #本地网络中IP地址为192

Swift HTTP网络操作库SwiftHTTP使用详解1(配置,及数据请求)

一,SwiftHTTP的说明与配置 1,什么是SwiftHTTP SwiftHTTP本质是基于`NSURLSession`,并做了封装.使用SwiftHTTP可以让我们网络请求相关代码(如获取数据,提交数据,上传文件,下载文件等)更加简洁易用.(有点类似于我前面文章介绍的另一个网络库:Alamofire) 2,SwiftHTTP的功能特性: (1)便利的闭包API (2)支持运行队列(NSOperationQueue) (3)支持参数编码 (4)内置JSON请求序列化 (5)上传/下载文件带有进