接口说明
应用使用当前网络打开一个URL链接,所使用的接口说明如下。
类名 |
接口名 |
功能描述 |
---|---|---|
NetManager |
getInstance(Context context) |
获取网络管理的实例对象。 |
hasDefaultNet() |
查询当前是否有默认可用的数据网络。 |
|
getDefaultNet() |
获取当前默认的数据网络句柄。 |
|
addDefaultNetStatusCallback(NetStatusCallback callback) |
获取当前默认的数据网络状态变化。 |
|
setAppNet(NetHandle netHandle) |
应用绑定该数据网络。 |
|
NetHandle |
openConnection(URL url, java.net.Proxy proxy) throws IOException |
使用该网络打开一个URL链接。 |
开发步骤
- 调用NetManager.getInstance(Context)获取网络管理的实例对象。
- 调用NetManager.getDefaultNet()获取默认的数据网络。
- 调用NetHandle.openConnection()打开一个URL。
通过URL链接实例访问网站。
NetManager netManager = NetManager.getInstance(context);
if (!netManager.hasDefaultNet()) {
return;
}
NetHandle netHandle = netManager.getDefaultNet();
// 可以获取网络状态的变化
NetStatusCallback callback = new NetStatusCallback() {
// 重写需要获取的网络状态变化的override函数
};
netManager.addDefaultNetStatusCallback(callback);
// 通过openConnection来获取URLConnection
HttpURLConnection connection = null;
try {
String urlString = “EXAMPLE_URL“; // 开发者根据实际情况自定义EXAMPLE_URL
URL url = new URL(urlString);
URLConnection urlConnection = netHandle.openConnection(url,
java.net.Proxy.NO_PROXY);
if (urlConnection instanceof HttpURLConnection) {
connection = (HttpURLConnection) urlConnection;
connection.setRequestMethod(“GET”);
connection.connect();
// 之后可进行url的其他操作
}
} catch(IOException e) {
HiLog.error(TAG, “exception happened.”);
} finally {
if (connection != null){
connection.disconnect();
}
}