未验证 提交 b0c0b8f8 编写于 作者: O openharmony_ci 提交者: Gitee

!11255 将want开发指导内自定义字段示例转移至API参考内

Merge pull request !11255 from 闫文豪/wantGuide
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
Want模块提供系统的基本通信组件的能力。 Want模块提供系统的基本通信组件的能力。
> **说明:** > **说明:**
> >
> 本模块首批接口从API version 8 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 > 本模块首批接口从API version 8 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块 ## 导入模块
...@@ -46,79 +46,91 @@ import Want from '@ohos.application.Want'; ...@@ -46,79 +46,91 @@ import Want from '@ohos.application.Want';
}) })
``` ```
- 传递FD数据,FD表示文件描述符(FileDescriptor) - 通过自定字段传递数据, 以下为当前支持类型。
``` js * 字符串(String)
import fileio from '@ohos.fileio'; ```ts
var fd; let want = {
try { bundleName: "com.example.demo",
fd = fileio.openSync("/data/storage/el2/base/haps/pic.png"); abilityName: "com.example.demo.MainAbility",
} catch(e) { parameters: {
console.log("openSync fail:" + JSON.stringify(e)); keyForString: "str",
} },
var want = {
"deviceId": "", // deviceId为空表示本设备
"bundleName": "com.extreme.test",
"abilityName": "MainAbility",
"moduleName": "entry", // moduleName非必选
"parameters": {
"keyFd":{"type":"FD", "value":fd}
} }
}; ```
this.context.startAbility(want, (error) => { * 数字(Number)
// 显式拉起Ability,通过bundleName、abilityName和moduleName可以唯一确定一个Ability ```ts
console.log("error.code = " + error.code) let want = {
}) bundleName: "com.example.demo",
``` abilityName: "com.example.demo.MainAbility",
parameters: {
- 传递RemoteObject数据 keyForInt: 100,
keyForDouble: 99.99,
``` js },
import rpc from '@ohos.rpc';
import Ability from '@ohos.application.Ability'
class Stub extends rpc.RemoteObject {
constructor(des) {
if (typeof des == 'string') {
super(des);
} else {
return null;
}
} }
```
onRemoteRequest(code, data, reply, option) { * 布尔(Boolean)
if (code === 1) { ```ts
console.log('onRemoteRequest called') let want = {
let token = data.readInterfaceToken(); bundleName: "com.example.demo",
let num = data.readInt(); abilityName: "com.example.demo.MainAbility",
this.method(); parameters: {
return true; keyForBool: true,
} },
return false;
} }
```
method() { * 对象(Object)
console.log('method called'); ```ts
let want = {
bundleName: "com.example.demo",
abilityName: "com.example.demo.MainAbility",
parameters: {
keyForObject: {
keyForObjectString: "str",
keyForObjectInt: -200,
keyForObjectDouble: 35.5,
keyForObjectBool: false,
},
},
} }
} ```
* 数组(Array)
var remoteObject = new Stub('want-test'); ```ts
var want = { let want = {
"deviceId": "", // deviceId为空表示本设备 bundleName: "com.example.demo",
"bundleName": "com.extreme.test", abilityName: "com.example.demo.MainAbility",
"abilityName": "MainAbility", parameters: {
"moduleName": "entry", // moduleName非必选 keyForArrayString: ["str1", "str2", "str3"],
"parameters": { keyForArrayInt: [100, 200, 300, 400],
"keyRemoteObject":{"type":"RemoteObject", "value":remoteObject} keyForArrayDouble: [0.1, 0.2],
keyForArrayObject: [{obj1: "aaa"}, {obj2: 100}],
},
} }
}; ```
* 文件描述符(FD)
this.context.startAbility(want, (error) => { ```ts
// 显式拉起Ability,通过bundleName、abilityName和moduleName可以唯一确定一个Ability import fileio from '@ohos.fileio';
console.log("error.code = " + error.code) var fd;
}) try {
fd = fileio.openSync("/data/storage/el2/base/haps/pic.png");
} catch(e) {
console.log("openSync fail:" + JSON.stringify(e));
}
var want = {
"deviceId": "", // deviceId为空表示本设备
"bundleName": "com.extreme.test",
"abilityName": "MainAbility",
"moduleName": "entry", // moduleName非必选
"parameters": {
"keyFd":{"type":"FD", "value":fd}
}
};
this.context.startAbility(want, (error) => {
// 显式拉起Ability,通过bundleName、abilityName和moduleName可以唯一确定一个Ability
console.log("error.code = " + error.code)
})
```
```
<!--no_check--> <!--no_check-->
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册