Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
38435294
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看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
38435294
编写于
3月 25, 2022
作者:
O
openharmony_ci
提交者:
Gitee
3月 25, 2022
浏览文件
操作
浏览文件
下载
差异文件
!2552 测试问题修改+示例代码修改+文档格式整改
Merge pull request !2552 from LiAn/master
上级
6d947958
88a79f1c
变更
15
显示空白变更内容
内联
并排
Showing
15 changed file
with
288 addition
and
228 deletion
+288
-228
zh-cn/application-dev/device/Readme-CN.md
zh-cn/application-dev/device/Readme-CN.md
+1
-1
zh-cn/application-dev/device/vibrator-overview.md
zh-cn/application-dev/device/vibrator-overview.md
+1
-0
zh-cn/application-dev/reference/apis/js-apis-basic-features-animator.md
...ion-dev/reference/apis/js-apis-basic-features-animator.md
+10
-10
zh-cn/application-dev/reference/apis/js-apis-inputdevice.md
zh-cn/application-dev/reference/apis/js-apis-inputdevice.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-mediaquery.md
zh-cn/application-dev/reference/apis/js-apis-mediaquery.md
+13
-13
zh-cn/application-dev/reference/apis/js-apis-system-app.md
zh-cn/application-dev/reference/apis/js-apis-system-app.md
+59
-9
zh-cn/application-dev/reference/apis/js-apis-system-bluetooth.md
...pplication-dev/reference/apis/js-apis-system-bluetooth.md
+3
-3
zh-cn/application-dev/reference/arkui-ts/ts-container-list.md
...n/application-dev/reference/arkui-ts/ts-container-list.md
+0
-2
zh-cn/application-dev/ui/ts-application-resource-access.md
zh-cn/application-dev/ui/ts-application-resource-access.md
+2
-2
zh-cn/application-dev/ui/ts-framework-directory.md
zh-cn/application-dev/ui/ts-framework-directory.md
+3
-1
zh-cn/application-dev/ui/ts-media-resource-type.md
zh-cn/application-dev/ui/ts-media-resource-type.md
+10
-0
zh-cn/application-dev/ui/ts-types.md
zh-cn/application-dev/ui/ts-types.md
+1
-1
zh-cn/application-dev/ui/ui-js-overview.md
zh-cn/application-dev/ui/ui-js-overview.md
+0
-1
zh-cn/application-dev/website.md
zh-cn/application-dev/website.md
+1
-1
zh-cn/application-dev/work-scheduler/work-scheduler-dev-guide.md
...pplication-dev/work-scheduler/work-scheduler-dev-guide.md
+182
-182
未找到文件。
zh-cn/application-dev/device/Readme-CN.md
浏览文件 @
38435294
...
@@ -11,5 +11,5 @@
...
@@ -11,5 +11,5 @@
-
[
传感器开发概述
](
sensor-overview.md
)
-
[
传感器开发概述
](
sensor-overview.md
)
-
[
传感器开发指导
](
sensor-guidelines.md
)
-
[
传感器开发指导
](
sensor-guidelines.md
)
-
振动
-
振动
-
[
振动开发概述
](
vibrator-
guidelines
.md
)
-
[
振动开发概述
](
vibrator-
overview
.md
)
-
[
振动开发指导
](
vibrator-guidelines.md
)
-
[
振动开发指导
](
vibrator-guidelines.md
)
zh-cn/application-dev/device/vibrator-overview.md
浏览文件 @
38435294
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
Vibrator属于控制类小器件,主要包含以下四个模块:Vibrator API,Vibrator Framework,Vibrator Service和HD_IDL层。
Vibrator属于控制类小器件,主要包含以下四个模块:Vibrator API,Vibrator Framework,Vibrator Service和HD_IDL层。
**图1**
控制类小器件中的Vibrator
**图1**
控制类小器件中的Vibrator
!
[
zh-cn_image_0000001180249428
](
figures/zh-cn_image_0000001180249428.png
)
!
[
zh-cn_image_0000001180249428
](
figures/zh-cn_image_0000001180249428.png
)
-
Vibrator API:提供振动器基础的API,主要包含振动器的列表查询,振动器的振动器效果查询,触发/关闭振动器等接口。
-
Vibrator API:提供振动器基础的API,主要包含振动器的列表查询,振动器的振动器效果查询,触发/关闭振动器等接口。
...
...
zh-cn/application-dev/reference/apis/js-apis-basic-features-animator.md
浏览文件 @
38435294
...
@@ -97,7 +97,7 @@ update(options: AnimatorOptions): void
...
@@ -97,7 +97,7 @@ update(options: AnimatorOptions): void
**示例:**
**示例:**
```
```
animator.update(options)
;
animator.update(options)
;
```
```
### play
### play
...
@@ -110,7 +110,7 @@ play(): void
...
@@ -110,7 +110,7 @@ play(): void
**示例:**
**示例:**
```
```
animator.play()
;
animator.play()
;
```
```
### finish
### finish
...
@@ -123,7 +123,7 @@ finish(): void
...
@@ -123,7 +123,7 @@ finish(): void
**示例:**
**示例:**
```
```
animator.finish()
;
animator.finish()
;
```
```
### pause
### pause
...
@@ -136,7 +136,7 @@ pause(): void
...
@@ -136,7 +136,7 @@ pause(): void
**示例:**
**示例:**
```
```
animator.pause()
;
animator.pause()
;
```
```
### cancel
### cancel
...
@@ -149,7 +149,7 @@ cancel(): void
...
@@ -149,7 +149,7 @@ cancel(): void
**示例:**
**示例:**
```
```
animator.cancel()
;
animator.cancel()
;
```
```
### reverse
### reverse
...
@@ -162,7 +162,7 @@ reverse(): void
...
@@ -162,7 +162,7 @@ reverse(): void
**示例:**
**示例:**
```
```
animator.reverse()
;
animator.reverse()
;
```
```
### onframe
### onframe
...
@@ -180,7 +180,7 @@ onframe: (progress: number) => void
...
@@ -180,7 +180,7 @@ onframe: (progress: number) => void
**示例:**
**示例:**
```
```
animator.onframe()
;
animator.onframe()
;
```
```
### onfinish
### onfinish
...
@@ -193,7 +193,7 @@ onfinish: () => void
...
@@ -193,7 +193,7 @@ onfinish: () => void
**示例:**
**示例:**
```
```
animator.onfinish()
;
animator.onfinish()
;
```
```
### oncancel
### oncancel
...
@@ -206,7 +206,7 @@ oncancel: () => void
...
@@ -206,7 +206,7 @@ oncancel: () => void
**示例:**
**示例:**
```
```
animator.oncancel()
;
animator.oncancel()
;
```
```
### onrepeat
### onrepeat
...
@@ -217,7 +217,7 @@ onrepeat: () => void
...
@@ -217,7 +217,7 @@ onrepeat: () => void
**示例:**
**示例:**
```
```
animator.onrepeat()
;
animator.onrepeat()
;
```
```
动画将重复。
动画将重复。
...
...
zh-cn/application-dev/reference/apis/js-apis-inputdevice.md
浏览文件 @
38435294
...
@@ -102,7 +102,7 @@ getDevice(deviceId: number, callback: AsyncCallback<InputDeviceData>): voi
...
@@ -102,7 +102,7 @@ getDevice(deviceId: number, callback: AsyncCallback<InputDeviceData>): voi
```
```
export default {
export default {
InputDeviceData {
InputDeviceData
:
{
deviceId : 0,
deviceId : 0,
name : "NA",
name : "NA",
sources : Array,
sources : Array,
...
@@ -138,7 +138,7 @@ function getDevice(deviceId: number): Promise<InputDeviceData>
...
@@ -138,7 +138,7 @@ function getDevice(deviceId: number): Promise<InputDeviceData>
```
```
export default {
export default {
InputDeviceData {
InputDeviceData
:
{
deviceId : 0,
deviceId : 0,
name : "NA",
name : "NA",
sources : Array,
sources : Array,
...
...
zh-cn/application-dev/reference/apis/js-apis-mediaquery.md
浏览文件 @
38435294
...
@@ -80,16 +80,18 @@ off(type: 'change', callback?: Callback<MediaQueryResult>): void
...
@@ -80,16 +80,18 @@ off(type: 'change', callback?: Callback<MediaQueryResult>): void
-
示例
-
示例
```
```
listener = mediaquery.matchMediaSync('(orientation: landscape)'); //监听横屏事件
import mediaquery from '@ohos.mediaquery'
onPortrait(mediaQueryResult) {
let listener = mediaquery.matchMediaSync('(orientation: landscape)'); //监听横屏事件
function onPortrait(mediaQueryResult) {
if (mediaQueryResult.matches) {
if (mediaQueryResult.matches) {
// do something here
// do something here
} else {
} else {
// do something here
// do something here
}
}
}
}
listener.on('change',
onPortrait) // 注册回调
this.listener.on('change', this.
onPortrait) // 注册回调
listener.off('change',
onPortrait) // 去注册回调
this.listener.off('change', this.
onPortrait) // 去注册回调
```
```
...
@@ -141,5 +143,3 @@ struct MediaQueryExample {
...
@@ -141,5 +143,3 @@ struct MediaQueryExample {
}
}
}
}
```
```
\ No newline at end of file
![
zh-cn_image_0000001174422920
](
figures/zh-cn_image_0000001174422920.gif
)
zh-cn/application-dev/reference/apis/js-apis-system-app.md
浏览文件 @
38435294
...
@@ -81,45 +81,95 @@ requestFullWindow(options?: RequestFullWindowOptions): void
...
@@ -81,45 +81,95 @@ requestFullWindow(options?: RequestFullWindowOptions): void
}
}
```
```
## app.setImageCacheCount
## app.setImageCacheCount
<sup>7+</sup>
setImageCacheCount(value: number): void
setImageCacheCount(value: number): void
设置
解码图像计数的图像缓存容量。如果未设置,应用程序将不会缓存任何解码图像
。
设置
内存中缓存解码后图片的数量上限,提升再次加载同源图片的加载速度。如果不设置则默认为0,不进行缓存。缓存采用内置的LRU策略,新图片加载后,如果超过缓存上限,会删除最久未再次加载的缓存。建议根据应用内存需求,设置合理缓存数量,数字过大可能导致内存使用过高
。
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**参数:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| -------- | -------- | -------- | -------- |
| value | number | 否 |
解码图像计数的值容
量。 |
| value | number | 否 |
内存中解码后图片的缓存数
量。 |
## app.setImageRawDataCacheSize
**示例:**
```
// app.ets
import app from '@system.app';
export default {
onCreate() {
app.setImageCacheCount(100) // 设置解码后图片内存缓存上限为100张
console.info('Application onCreate')
},
onDestroy() {
console.info('Application onDestroy')
},
}
```
## app.setImageRawDataCacheSize<sup>7+</sup>
setImageRawDataCacheSize(value: number): void
setImageRawDataCacheSize(value: number): void
在解码前设置原始图像数据大小的图像缓存容量(以字节为单位)。如果未设置,应用程序将不会缓存任何原始图像数据
。
设置内存中缓存解码前图片数据的大小上限,单位为字节,提升再次加载同源图片的加载速度。如果不设置则默认为0,不进行缓存。缓存采用内置的LRU策略,新图片加载后,如果解码前数据超过缓存上限,会删除最久未再次加载的图片数据缓存。建议根据应用内存需求,设置合理缓存上限,过大可能导致应用内存使用过高
。
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**参数:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| -------- | -------- | -------- | -------- |
| value | number | 否 |
原始图像数据大小的值容量(以字节为单位)
。 |
| value | number | 否 |
内存中解码前图片数据的缓存大小,单位为字节
。 |
**示例:**
## app.setImageFileCacheSize
```
// app.ets
import app from '@system.app';
export default {
onCreate() {
app.setImageRawDataCacheSize(104,857,600) // 设置解码前图片数据内存缓存上限为100MB
console.info('Application onCreate')
},
onDestroy() {
console.info('Application onDestroy')
},
}
```
## app.setImageFileCacheSize<sup>7+</sup>
setImageFileCacheSize(value: number): void
setImageFileCacheSize(value: number): void
在解码前设置磁盘上的图像文件缓存大小(以字节为单位)。如果未设置,应用程序将在磁盘上缓存100MB图像文件
。
设置图片文件缓存的大小上限,单位为字节,提升再次加载同源图片的加载速度,特别是对网络图源、缩略图会有较明显提升。如果不设置则默认为100MB。缓存采用内置的LRU策略,新图片加载后,如果超过文件缓存上限,会按照时间由远到近删除缓存图片文件直到缓存图片大小满足缓存上限。建议根据应用实际需求,设置合理文件缓存上限,数字过大可能导致磁盘空间占用过高
。
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
**参数:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| -------- | -------- | -------- | -------- |
| value | number | 否 | 原始图像数据大小的值容量(以字节为单位)。 |
| value | number | 否 | 图片文件的缓存大小,单位为字节。 |
**示例:**
```
// app.ets
import app from '@system.app';
export default {
onCreate() {
app.setImageFileCacheSize(209,715,200) // 设置图片文件数据缓存上限为200MB
console.info('Application onCreate')
},
onDestroy() {
console.info('Application onDestroy')
},
}
```
## AppResponse
## AppResponse
...
...
zh-cn/application-dev/reference/apis/js-apis-system-bluetooth.md
浏览文件 @
38435294
...
@@ -48,7 +48,7 @@ ohos.permission.MANAGE_BLUETOOTH
...
@@ -48,7 +48,7 @@ ohos.permission.MANAGE_BLUETOOTH
console.log('call bluetooth.startBLEScan success.');
console.log('call bluetooth.startBLEScan success.');
},
},
fail(code, data) {
fail(code, data) {
console.log('call bluetooth.startBLEScan failed, code: ${code}, data: ${data}.
`
);
console.log('call bluetooth.startBLEScan failed, code: ${code}, data: ${data}.
'
);
},
},
complete() {
complete() {
console.log('call bluetooth.startBLEScan complete.');
console.log('call bluetooth.startBLEScan complete.');
...
@@ -82,7 +82,7 @@ ohos.permission.MANAGE_BLUETOOTH
...
@@ -82,7 +82,7 @@ ohos.permission.MANAGE_BLUETOOTH
console.log('call bluetooth.stopBLEScan success.');
console.log('call bluetooth.stopBLEScan success.');
},
},
fail(data, code) {
fail(data, code) {
console.log(
`call bluethooth.stopBLEScan fail, code: ${code}, data: ${data}.`
);
console.log(
'call bluethooth.stopBLEScan fail, code: ${code}, data: ${data}.'
);
},
},
complete() {
complete() {
console.log('call bluethooth.stopBLEScan complete.');
console.log('call bluethooth.stopBLEScan complete.');
...
@@ -138,7 +138,7 @@ ohos.permission.MANAGE_BLUETOOTH
...
@@ -138,7 +138,7 @@ ohos.permission.MANAGE_BLUETOOTH
});
});
},
},
fail(code, data) {
fail(code, data) {
console.log('Failed to start BLE device scan, code: ${code}, data: ${data}
`
);
console.log('Failed to start BLE device scan, code: ${code}, data: ${data}
'
);
}
}
});
});
```
```
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-list.md
浏览文件 @
38435294
...
@@ -119,5 +119,3 @@ struct ListExample {
...
@@ -119,5 +119,3 @@ struct ListExample {
```
```
![
zh-cn_image_0000001174264378
](
figures/zh-cn_image_0000001174264378.gif
)
![
zh-cn_image_0000001174264378
](
figures/zh-cn_image_0000001174264378.gif
)
◤otherprops:internal:◢
zh-cn/application-dev/ui/ts-application-resource-access.md
浏览文件 @
38435294
...
@@ -24,9 +24,9 @@
...
@@ -24,9 +24,9 @@
## 资源引用
## 资源引用
在工程中,通过
**“$r('app.type.name')”**
的形式引用应用资源。app代表是应用内resources目录中定义的资源;type代表资源类型(或资源的存放位置),可以取“color”、“float”、“string”、“plural”、“media”,name代表资源命名,由开发者定义资源时确定。
在工程中,通过
"$r('app.type.name')"
的形式引用应用资源。app代表是应用内resources目录中定义的资源;type代表资源类型(或资源的存放位置),可以取“color”、“float”、“string”、“plural”、“media”,name代表资源命名,由开发者定义资源时确定。
引用rawfile下资源时使用
**“$rawfile('filename')”**
的形式
**,**
当前$rawfile仅支持Image控件引用图片资源,filename需要表示为rawfile目录下的文件相对路径,文件名需要包含后缀,路径开头不可以以"/"开头。
引用rawfile下资源时使用
"$rawfile('filename')" 的形式,
当前$rawfile仅支持Image控件引用图片资源,filename需要表示为rawfile目录下的文件相对路径,文件名需要包含后缀,路径开头不可以以"/"开头。
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 资源描述符不能拼接使用。
> 资源描述符不能拼接使用。
...
...
zh-cn/application-dev/ui/ts-framework-directory.md
浏览文件 @
38435294
...
@@ -11,7 +11,7 @@ FA应用的eTS模块(entry/src/main)的典型开发目录结构如下:
...
@@ -11,7 +11,7 @@ FA应用的eTS模块(entry/src/main)的典型开发目录结构如下:
**目录结构中文件分类如下:**
**目录结构中文件分类如下:**
-
.ets结尾的eTS(extended TypeScript)文件,这个文件用于描述UI布局、样式、事件交互和页面逻辑。
.ets结尾的eTS(extended TypeScript)文件,这个文件用于描述UI布局、样式、事件交互和页面逻辑。
**各个文件夹和文件的作用:**
**各个文件夹和文件的作用:**
...
@@ -26,4 +26,6 @@ FA应用的eTS模块(entry/src/main)的典型开发目录结构如下:
...
@@ -26,4 +26,6 @@ FA应用的eTS模块(entry/src/main)的典型开发目录结构如下:
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
>
>
> - 资源目录resources文件夹位于src/main下,此目录下资源文件的详细规范以及子目录结构规范参看[资源文件的分类](../quick-start/basic-resource-file-categories.md)。
>
> - 页面支持导入TypeScript和JavaScript文件。
> - 页面支持导入TypeScript和JavaScript文件。
zh-cn/application-dev/ui/ts-media-resource-type.md
浏览文件 @
38435294
...
@@ -11,3 +11,13 @@
...
@@ -11,3 +11,13 @@
| SVG | .svg |
| SVG | .svg |
| WEBP | .webp |
| WEBP | .webp |
| BMP | .bmp |
| BMP | .bmp |
-
开发框架支持的图片资源类型说明
| 格式 | 支持的文件类型 |
| -------- | -------- |
| H.263 | .3gp
<br>
.mp4 |
| H.264 AVC
<br>
Baseline Profile (BP) | .3gp
<br>
.mp4 |
| MPEG-4 SP | .3gp |
| VP8 | .webm
<br>
.mkv |
zh-cn/application-dev/ui/ts-types.md
浏览文件 @
38435294
...
@@ -60,7 +60,7 @@
...
@@ -60,7 +60,7 @@
资源引用类型,用于设置组件属性的值。
资源引用类型,用于设置组件属性的值。
可以通过$r或者$rawfile创建Resource类型对象,详见
[
资源访问
](
ts-
media-resource-type
.md
)
。
可以通过$r或者$rawfile创建Resource类型对象,详见
[
资源访问
](
ts-
application-resource-access
.md
)
。
-
$r('belonging.type.name')
-
$r('belonging.type.name')
belonging:系统资源或者应用资源,相应的取值为'sys'和'app';
belonging:系统资源或者应用资源,相应的取值为'sys'和'app';
...
...
zh-cn/application-dev/ui/ui-js-overview.md
浏览文件 @
38435294
...
@@ -5,7 +5,6 @@
...
@@ -5,7 +5,6 @@
## 基础能力
## 基础能力
-
**类Web范式编程**
采用类HTML和CSS Web编程语言作为页面布局和页面样式的开发语言,页面业务逻辑则支持ECMAScript规范的JavaScript语言。方舟开发框架提供的类Web编程范式,可以让开发者避免编写UI状态切换的代码,视图配置信息更加直观。
采用类HTML和CSS Web编程语言作为页面布局和页面样式的开发语言,页面业务逻辑则支持ECMAScript规范的JavaScript语言。方舟开发框架提供的类Web编程范式,可以让开发者避免编写UI状态切换的代码,视图配置信息更加直观。
...
...
zh-cn/application-dev/website.md
浏览文件 @
38435294
...
@@ -254,7 +254,7 @@
...
@@ -254,7 +254,7 @@
-
[
传感器开发概述
](
device/sensor-overview.md
)
-
[
传感器开发概述
](
device/sensor-overview.md
)
-
[
传感器开发指导
](
device/sensor-guidelines.md
)
-
[
传感器开发指导
](
device/sensor-guidelines.md
)
-
振动
-
振动
-
[
振动开发概述
](
device/vibrator-
guidelines
.md
)
-
[
振动开发概述
](
device/vibrator-
overview
.md
)
-
[
振动开发指导
](
device/vibrator-guidelines.md
)
-
[
振动开发指导
](
device/vibrator-guidelines.md
)
-
设备使用信息统计
-
设备使用信息统计
-
[
设备使用信息统计概述
](
device-usage-statistics/device-usage-statistics-overview.md
)
-
[
设备使用信息统计概述
](
device-usage-statistics/device-usage-statistics-overview.md
)
...
...
zh-cn/application-dev/work-scheduler/work-scheduler-dev-guide.md
浏览文件 @
38435294
...
@@ -39,8 +39,8 @@ function isLastWorkTimeOut(workId: number): Promise<boolean>;| 获取上次任
...
@@ -39,8 +39,8 @@ function isLastWorkTimeOut(workId: number): Promise<boolean>;| 获取上次任
workId | 延迟任务Id(必填)|number
workId | 延迟任务Id(必填)|number
bundleName | 延迟任务包名(必填)|string
bundleName | 延迟任务包名(必填)|string
abilityName | 延迟任务回调通知的组件名(必填)|string
abilityName | 延迟任务回调通知的组件名(必填)|string
networkType | 网络
条件 | NetworkType
networkType | 网络
类型 | NetworkType
isCharging | 是否充电 | bool
isCharging | 是否充电 | bool
ean
chargerType | 充电类型 | ChargingType
chargerType | 充电类型 | ChargingType
batteryLevel | 电量| number
batteryLevel | 电量| number
batteryStatus| 电池状态| BatteryStatus
batteryStatus| 电池状态| BatteryStatus
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录