回答

收藏

鸿蒙文档种网络与连接中的网络管理中代码有问题

鸿蒙开发 鸿蒙开发 12073 人阅读 | 0 人回复 | 2020-09-19


今天群里有人问鸿蒙开发中关于网络那一块的问题,正好我也想要试试鸿蒙开发,于是就打开了开发文档,找到网络相关的文档,传送门:[点我](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/connectivity-net-url-0000000000045542 "点我")
最开始我并没有直接复制鸿蒙文档内的源代码,作为一名CV工程师,我一顿CV操作,瞬间发现了文档中的BUG,一起来看文档中的代码:

  1. NetManager netManager = NetManager.getInstance(null);

  2. if (!netManager.hasDefaultNet()) {
  3.     return;
  4. }
  5. NetHandle netHandle = netManager.getDefaultNet();

  6. // 可以获取网络状态的变化
  7. NetStatusCallback callback = new NetStatusCallback() {
  8.     // 重写需要获取的网络状态变化的override函数
  9. }
  10. netManager.addDefaultNetStatusCallback(callback);

  11. // 通过openConnection来获取URLConnection
  12. try {
  13.     HttpURLConnection connection = null;
  14.     String urlString = "https://www.huawei.com/";
  15.     URL url = new URL(urlString);
  16.     URLConnection urlConnection = netHandle.openConnection(url,
  17.                 java.net.Proxy.NO_PROXY);
  18.     if (urlConnection instanceof HttpURLConnection) {
  19.         connection = (HttpURLConnection) urlConnection;
  20.     }
  21.     connection.setRequestMethod("GET");
  22.     connection.connect();
  23.     // 之后可进行url的其他操作
  24. } catch(IOException e) {
  25. } finally {
  26.     connection.disconnect();
  27. }
复制代码

乍一看没有问题,但是当我复制到DevEco Studio之后,直接给我报错了,看代码:
QQ截图20200919165709.png

缺少分号,并且connection应该在try catch外面创建实例化,当然这些问题很容易解决,但是为何官方文档会出现这种低级问题呢?难道这些代码都是随手写的,并没有经过ide的测试吗?
最后,我在华为鸿蒙官方文档的意见反馈处填写了自己的反馈:
QQ截图20200919170112.png


分享到:
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则