Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
5016bb82
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
5016bb82
编写于
3月 15, 2023
作者:
O
openharmony_ci
提交者:
Gitee
3月 15, 2023
浏览文件
操作
浏览文件
下载
差异文件
!15991 Add a check for memory allocation
Merge pull request !15991 from Yangys/OpenHarmony-3.2-Release
上级
3b438c6b
025e7689
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
151 addition
and
25 deletion
+151
-25
zh-cn/application-dev/connectivity/net-sharing.md
zh-cn/application-dev/connectivity/net-sharing.md
+130
-0
zh-cn/application-dev/connectivity/socket-connection.md
zh-cn/application-dev/connectivity/socket-connection.md
+14
-14
zh-cn/application-dev/reference/apis/js-apis-http.md
zh-cn/application-dev/reference/apis/js-apis-http.md
+5
-11
zh-cn/application-dev/reference/apis/js-apis-socket.md
zh-cn/application-dev/reference/apis/js-apis-socket.md
+2
-0
未找到文件。
zh-cn/application-dev/connectivity/net-sharing.md
0 → 100755
浏览文件 @
5016bb82
# 网络共享
## 简介
网络共享管理分享设备已有网络给其他连接设备,支持Wi-Fi热点共享、蓝牙共享和USB共享,同时提供网络共享状态、共享流量查询功能。
> **说明:**
> 为了保证应用的运行效率,大部分API调用都是异步的,对于异步调用的API均提供了callback和Promise两种方式,以下示例均采用callback函数,更多方式可以查阅[API参考](../reference/apis/js-apis-net-sharing.md)。
## 基本概念
-
WIFI共享:通过WIFI热点共享网络。
-
蓝牙共享:通过蓝牙共享网络。
-
USB共享:通过USB共享网络。
## 约束
-
开发语言:C++ JS
-
系统:linux内核
-
本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 场景介绍
网络共享的典型场景有:
-
开启网络共享
-
停止网络共享
-
获取共享网络的数据流量
以下分别介绍具体开发方式。
## 接口说明
完整的JS API说明以及实例代码请参考:
[
网络共享
](
../reference/apis/js-apis-net-sharing.md
)
。
| 类型 | 接口 | 功能说明 |
| ---- | ---- | ---- |
| ohos.net.sharing | function isSharingSupported(callback: AsyncCallback
\<
boolean>): void; | 获取当前系统是否支持网络共享,使用callback方式作为异步方法 |
| ohos.net.sharing | function isSharing(callback: AsyncCallback
\<
boolean>): void; | 获取当前共享状态,使用callback方式作为异步方法 |
| ohos.net.sharing | function startSharing(type: SharingIfaceType, callback: AsyncCallback
\<
void>): void; | 开启共享,type为共享类型,目前支持Wifi热点、蓝牙、USB,使用callback方式作为异步方法 |
| ohos.net.sharing | function stopSharing(type: SharingIfaceType, callback: AsyncCallback
\<
void>): void; | 停止指定类型共享,type为共享类型,包括Wifi热点、蓝牙、USB,使用callback方式作为异步方法 |
| ohos.net.sharing | function getStatsRxBytes(callback: AsyncCallback
\<
number>): void; | 获取共享接收数据量,单位KB,使用callback方式作为异步方法 |
| ohos.net.sharing | function getStatsTxBytes(callback: AsyncCallback
\<
number>): void; | 获取共享发送数据量,单位KB,使用callback方式作为异步方法 |
| ohos.net.sharing | function getStatsTotalBytes(callback: AsyncCallback
\<
number>): void; | 获取共享总数据流量,单位KB,使用callback方式作为异步方法 |
| ohos.net.sharing | function getSharingIfaces(state: SharingIfaceState, callback: AsyncCallback
\<
Array
\<
string>>): void; | 获取指定状态的网卡名称,state为状态,包括正在共享、可共享、共享错误,使用callback方式作为异步方法 |
| ohos.net.sharing | function getSharingState(type: SharingIfaceType, callback: AsyncCallback
\<
SharingIfaceState>): void; | 获取指定类型共享状态,type为类型,目前支持Wifi热点、蓝牙、USB,使用callback方式作为异步方法 |
| ohos.net.sharing | function getSharableRegexes(type: SharingIfaceType, callback: AsyncCallback
\<
Array
\<
string>>): void; | 获取与指定类型匹配的网卡正则表达式列表,type为类型,目前支持Wifi热点、蓝牙、USB,使用callback方式作为异步方法 |
| ohos.net.sharing | function on(type: 'sharingStateChange', callback: Callback
\<
boolean>): void; | 注册共享状态改变监听,返回网络共享的状态。 |
| ohos.net.sharing | function off(type: 'sharingStateChange', callback?: Callback
\<
boolean>): void; | 注销共享状态改变监听,返回网络共享的状态。 |
| ohos.net.sharing | unction on(type: 'interfaceSharingStateChange', callback: Callback
\<
{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void; | 注册指定网卡共享状态改变监听 |
| ohos.net.sharing | function off(type: 'interfaceSharingStateChange', callback?: Callback
\<
{ type: SharingIfaceType, iface: string, state: SharingIfaceState }>): void; | 注销指定网卡共享状态改变监听 |
| ohos.net.sharing | function on(type: 'sharingUpstreamChange', callback: Callback
\<
NetHandle>): void; | 注册上行网卡改变监听 |
| ohos.net.sharing | function off(type: 'sharingUpstreamChange', callback?: Callback
\<
NetHandle>): void; | 注销上行网卡改变监听 |
## 开启网络共享
1.
从@ohos.net.sharing中导入sharing命名空间。
2.
注册监听共享状态的改变。
3.
调用startSharing方法,来开启指定类型共享。
4.
接收到共享状态开启的回调,开启共享成功。
```
js
// 从@ohos.net.sharing中导入sharing命名空间
import
sharing
from
'
@ohos.net.sharing
'
// 注册监听共享状态的改变
sharing
.
on
(
'
sharingStateChange
'
,
(
error
,
data
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
console
.
log
(
JSON
.
stringify
(
data
));
});
// 调用startSharing方法,来开启指定类型共享
sharing
.
startSharing
(
sharing
.
SharingIfaceType
.
SHARING_WIFI
,
(
error
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
});
```
## 停止网络共享
### 开发步骤
1.
从@ohos.net.sharing中导入sharing命名空间。
2.
注册监听共享状态的改变。
3.
调用stopSharing方法,来停止指定类型共享。
4.
接收到共享状态关闭的回调,停止共享成功。
```
js
// 从@ohos.net.sharing中导入sharing命名空间
import
sharing
from
'
@ohos.net.sharing
'
// 注册监听共享状态的改变
sharing
.
on
(
'
sharingStateChange
'
,
(
error
,
data
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
console
.
log
(
JSON
.
stringify
(
data
));
});
// 调用stopSharing方法,来停止指定类型共享
sharing
.
stopSharing
(
sharing
.
SharingIfaceType
.
SHARING_WIFI
,
(
error
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
});
```
## 获取共享网络的数据流量
### 开发步骤
1.
从@ohos.net.sharing中导入sharing命名空间。
2.
调用startSharing方法,来开启指定类型共享。
3.
调用getStatsTotalBytes方法,来获取共享网络数据量。
4.
调用stopSharing方法,来停止指定类型共享,共享网络数据量清零。
```
js
// 从@ohos.net.sharing中导入sharing命名空间
import
sharing
from
'
@ohos.net.sharing
'
// 调用startSharing方法,来开启指定类型共享
sharing
.
startSharing
(
sharing
.
SharingIfaceType
.
SHARING_WIFI
,
(
error
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
});
// 调用getStatsTotalBytes方法,来获取共享网络数据量
sharing
.
getStatsTotalBytes
((
error
,
data
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
console
.
log
(
JSON
.
stringify
(
data
));
});
// 调用stopSharing方法,来停止指定类型共享,共享网络数据量清零
sharing
.
stopSharing
(
sharing
.
SharingIfaceType
.
SHARING_WIFI
,
(
error
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
});
// 再次调用getStatsTotalBytes方法,共享网络数据量已清零
sharing
.
getStatsTotalBytes
((
error
,
data
)
=>
{
console
.
log
(
JSON
.
stringify
(
error
));
console
.
log
(
JSON
.
stringify
(
data
));
});
```
zh-cn/application-dev/connectivity/socket-connection.md
浏览文件 @
5016bb82
...
...
@@ -190,7 +190,7 @@ UDP与TCP流程大体类似,下面以TCP为例:
let
tlsTwoWay
=
socket
.
constructTLSSocketInstance
();
// 订阅TLS Socket相关的订阅事件
t
cp
.
on
(
'
message
'
,
value
=>
{
t
lsTwoWay
.
on
(
'
message
'
,
value
=>
{
console
.
log
(
"
on message
"
)
let
buffer
=
value
.
message
let
dataView
=
new
DataView
(
buffer
)
...
...
@@ -200,10 +200,10 @@ UDP与TCP流程大体类似,下面以TCP为例:
}
console
.
log
(
"
on connect received:
"
+
str
)
});
t
cp
.
on
(
'
connect
'
,
()
=>
{
t
lsTwoWay
.
on
(
'
connect
'
,
()
=>
{
console
.
log
(
"
on connect
"
)
});
t
cp
.
on
(
'
close
'
,
()
=>
{
t
lsTwoWay
.
on
(
'
close
'
,
()
=>
{
console
.
log
(
"
on close
"
)
});
...
...
@@ -247,22 +247,22 @@ UDP与TCP流程大体类似,下面以TCP为例:
});
// 连接使用完毕后,主动关闭。取消相关事件的订阅。
tls
.
close
((
err
)
=>
{
tls
TwoWay
.
close
((
err
)
=>
{
if
(
err
)
{
console
.
log
(
"
close callback error =
"
+
err
);
}
else
{
console
.
log
(
"
close success
"
);
}
tls
.
off
(
'
message
'
);
tls
.
off
(
'
connect
'
);
tls
.
off
(
'
close
'
);
tls
TwoWay
.
off
(
'
message
'
);
tls
TwoWay
.
off
(
'
connect
'
);
tls
TwoWay
.
off
(
'
close
'
);
});
// 创建一个(单向认证)TLS Socket连接,返回一个TLS Socket对象。
let
tlsOneWay
=
socket
.
constructTLSSocketInstance
();
// One way authentication
// 订阅TLS Socket相关的订阅事件
t
cp
.
on
(
'
message
'
,
value
=>
{
t
lsTwoWay
.
on
(
'
message
'
,
value
=>
{
console
.
log
(
"
on message
"
)
let
buffer
=
value
.
message
let
dataView
=
new
DataView
(
buffer
)
...
...
@@ -272,10 +272,10 @@ UDP与TCP流程大体类似,下面以TCP为例:
}
console
.
log
(
"
on connect received:
"
+
str
)
});
t
cp
.
on
(
'
connect
'
,
()
=>
{
t
lsTwoWay
.
on
(
'
connect
'
,
()
=>
{
console
.
log
(
"
on connect
"
)
});
t
cp
.
on
(
'
close
'
,
()
=>
{
t
lsTwoWay
.
on
(
'
close
'
,
()
=>
{
console
.
log
(
"
on close
"
)
});
...
...
@@ -308,15 +308,15 @@ UDP与TCP流程大体类似,下面以TCP为例:
});
// 连接使用完毕后,主动关闭。取消相关事件的订阅。
tls
.
close
((
err
)
=>
{
tls
TwoWay
.
close
((
err
)
=>
{
if
(
err
)
{
console
.
log
(
"
close callback error =
"
+
err
);
}
else
{
console
.
log
(
"
close success
"
);
}
tls
.
off
(
'
message
'
);
tls
.
off
(
'
connect
'
);
tls
.
off
(
'
close
'
);
tls
TwoWay
.
off
(
'
message
'
);
tls
TwoWay
.
off
(
'
connect
'
);
tls
TwoWay
.
off
(
'
close
'
);
});
```
...
...
zh-cn/application-dev/reference/apis/js-apis-http.md
浏览文件 @
5016bb82
...
...
@@ -77,7 +77,7 @@ createHttp(): HttpRequest
| 类型 | 说明 |
| :---------- | :----------------------------------------------------------- |
| HttpRequest | 返回一个HttpRequest对象,里面包括request、destroy、on和off方法。 |
| HttpRequest | 返回一个HttpRequest对象,里面包括request、
request2、
destroy、on和off方法。 |
**示例:**
...
...
@@ -545,12 +545,8 @@ on(type: 'headerReceive', callback: AsyncCallback\<Object\>): void
**示例:**
```
js
httpRequest
.
on
(
'
headerReceive
'
,
(
err
,
data
)
=>
{
if
(
!
err
)
{
console
.
info
(
'
header:
'
+
JSON
.
stringify
(
data
));
}
else
{
console
.
info
(
'
error:
'
+
JSON
.
stringify
(
err
));
}
httpRequest
.
on
(
'
headerReceive
'
,
(
data
)
=>
{
console
.
info
(
'
error:
'
+
JSON
.
stringify
(
data
));
});
```
...
...
@@ -763,9 +759,7 @@ httpRequest.off('dataEnd');
```
js
httpRequest
.
on
(
'
dataProgress
'
,
(
data
)
=>
{
if
(
!
err
)
{
console
.
info
(
'
dataProgress:
'
+
JSON
.
stringify
(
data
));
}
console
.
info
(
'
dataProgress:
'
+
JSON
.
stringify
(
data
));
});
```
...
...
@@ -915,7 +909,7 @@ let httpResponseCache = http.createHttpResponseCache();
## HttpResponseCache<sup>9+</sup>
存储HTTP访问请求响应的对象。
存储HTTP访问请求响应的对象。
在调用HttpResponseCache的方法前,需要先通过
[
createHttpResponseCache()
](
#httpcreatehttpresponsecache9
)
创建一个任务。
### flush<sup>9+</sup>
...
...
zh-cn/application-dev/reference/apis/js-apis-socket.md
浏览文件 @
5016bb82
# @ohos.net.socket (Socket连接)
本模块提供利用Socket进行数据传输的能力,支持TCPSocket、UDPSocket、WebSocket和TLSSocket。
> **说明:**
>
> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录