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版权所有,如需转载,注明出处)

原文地址:https://www.cnblogs.com/hainange/p/6153503.html