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

!7699 fa模型service资料修改

Merge pull request !7699 from 黄师伟/master
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
}, },
onConnect(want) { onConnect(want) {
console.log('ServiceAbility OnConnect'); console.log('ServiceAbility OnConnect');
return null; return new FirstServiceAbilityStub('test');
}, },
onDisconnect(want) { onDisconnect(want) {
console.log('ServiceAbility OnDisConnect'); console.log('ServiceAbility OnDisConnect');
...@@ -139,41 +139,36 @@ let promise = featureAbility.startAbility( ...@@ -139,41 +139,36 @@ let promise = featureAbility.startAbility(
```javascript ```javascript
import prompt from '@system.prompt' import prompt from '@system.prompt'
let mRemote; var option = {
function onConnectCallback(element, remote){ onConnect: function onConnectCallback(element, proxy) {
console.log('onConnectLocalService onConnectDone element: ' + element); console.log(`onConnectLocalService onConnectDone`)
console.log('onConnectLocalService onConnectDone remote: ' + remote); if (proxy === null) {
mRemote = remote; prompt.showToast({
if (mRemote == null) { message: "Connect service failed"
prompt.showToast({ })
message: "onConnectLocalService not connected yet" return
}); }
return; let data = rpc.MessageParcel.create()
} let reply = rpc.MessageParcel.create()
let option = new rpc.MessageOption(); let option = new rpc.MessageOption()
let data = new rpc.MessageParcel(); data.writeInterfaceToken("connect.test.token")
let reply = new rpc.MessageParcel(); proxy.sendRequest(0, data, reply, option)
data.writeInt(1);
data.writeInt(99);
mRemote.sendRequest(1, data, reply, option).then((result) => {
console.log('sendRequest success');
let msg = reply.readInt();
prompt.showToast({ prompt.showToast({
message: "onConnectLocalService connect result: " + msg, message: "Connect service success"
duration: 3000 })
}); },
}).catch((e) => { onDisconnect: function onDisconnectCallback(element) {
console.log('sendRequest error:' + e); console.log(`onConnectLocalService onDisconnectDone element:${element}`)
}); prompt.showToast({
message: "Disconnect service success"
} })
},
function onDisconnectCallback(element){ onFailed: function onFailedCallback(code) {
console.log('ConnectAbility onDisconnect Callback') console.log(`onConnectLocalService onFailed errCode:${code}`)
} prompt.showToast({
message: "Connect local service onFailed"
function onFailedCallback(code){ })
console.log('ConnectAbility onFailed Callback') }
} }
``` ```
...@@ -201,44 +196,27 @@ let promise = featureAbility.startAbility( ...@@ -201,44 +196,27 @@ let promise = featureAbility.startAbility(
```javascript ```javascript
import rpc from "@ohos.rpc"; import rpc from "@ohos.rpc";
let mMyStub; class FirstServiceAbilityStub extends rpc.RemoteObject {
export default { constructor(des: any) {
onStart() { if (typeof des === 'string') {
class MyStub extends rpc.RemoteObject{ super(des)
constructor(des) { } else {
if (typeof des === 'string') { return
super(des); }
} }
return null;
} onRemoteRequest(code: number, data: any, reply: any, option: any) {
onRemoteRequest(code, data, reply, option) { console.log(printLog + ` onRemoteRequest called`)
console.log("ServiceAbility onRemoteRequest called"); if (code === 1) {
if (code === 1) { let string = data.readString()
let op1 = data.readInt(); console.log(printLog + ` string=${string}`)
let op2 = data.readInt(); let result = Array.from(string).sort().join('')
console.log("op1 = " + op1 + ", op2 = " + op2); console.log(printLog + ` result=${result}`)
reply.writeInt(op1 + op2); reply.writeString(result)
} else { } else {
console.log("ServiceAbility unknown request code"); console.log(printLog + ` unknown request code`)
} }
return true; return true;
}
}
mMyStub = new MyStub("ServiceAbility-test");
},
onCommand(want, startId) {
console.log('ServiceAbility onCommand');
},
onConnect(want) {
console.log('ServiceAbility OnConnect');
return mMyStub;
},
onDisconnect(want) {
console.log('ServiceAbility OnDisConnect');
},
onStop() {
console.log('ServiceAbility onStop');
},
} }
``` ```
...@@ -255,40 +233,36 @@ let promise = featureAbility.startAbility( ...@@ -255,40 +233,36 @@ let promise = featureAbility.startAbility(
```ts ```ts
import prompt from '@system.prompt' import prompt from '@system.prompt'
let mRemote; var option = {
function onConnectCallback(element, remote){ onConnect: function onConnectCallback(element, proxy) {
console.log('onConnectRemoteService onConnectDone element: ' + element); console.log(`onConnectRemoteService onConnectDone`)
console.log('onConnectRemoteService onConnectDone remote: ' + remote); if (proxy === null) {
mRemote = remote; prompt.showToast({
if (mRemote == null) { message: "Connect service failed"
prompt.showToast({ })
message: "onConnectRemoteService not connected yet" return
}); }
return; let data = rpc.MessageParcel.create()
} let reply = rpc.MessageParcel.create()
let option = new rpc.MessageOption(); let option = new rpc.MessageOption()
let data = new rpc.MessageParcel(); data.writeInterfaceToken("connect.test.token")
let reply = new rpc.MessageParcel(); proxy.sendRequest(0, data, reply, option)
data.writeInt(1);
data.writeInt(99);
mRemote.sendRequest(1, data, reply, option).then((result) => {
console.log('sendRequest success');
let msg = reply.readInt();
prompt.showToast({ prompt.showToast({
message: "onConnectRemoteService connect result: " + msg, message: "Connect service success"
duration: 3000 })
}); },
}).catch((e) => { onDisconnect: function onDisconnectCallback(element) {
console.log('sendRequest error:' + e); console.log(`onConnectRemoteService onDisconnectDone element:${element}`)
}); prompt.showToast({
} message: "Disconnect service success"
})
function onDisconnectCallback(element){ },
console.log('ConnectRemoteAbility onDisconnect Callback') onFailed: function onFailedCallback(code) {
} console.log(`onConnectRemoteService onFailed errCode:${code}`)
prompt.showToast({
function onFailedCallback(code){ message: "Connect local service onFailed"
console.log('ConnectRemoteAbility onFailed Callback') })
}
} }
``` ```
...@@ -374,23 +348,25 @@ Service侧把自身的实例返回给调用侧的代码示例如下: ...@@ -374,23 +348,25 @@ Service侧把自身的实例返回给调用侧的代码示例如下:
```ts ```ts
import rpc from "@ohos.rpc"; import rpc from "@ohos.rpc";
class FirstServiceAbilityStub extends rpc.RemoteObject{ class FirstServiceAbilityStub extends rpc.RemoteObject {
constructor(des) { constructor(des: any) {
if (typeof des === 'string') { if (typeof des === 'string') {
super(des); super(des)
} else { } else {
return null; return
} }
} }
onRemoteRequest(code, data, reply, option) {
console.log("ServiceAbility onRemoteRequest called"); onRemoteRequest(code: number, data: any, reply: any, option: any) {
console.log(printLog + ` onRemoteRequest called`)
if (code === 1) { if (code === 1) {
let op1 = data.readInt(); let string = data.readString()
let op2 = data.readInt(); console.log(printLog + ` string=${string}`)
console.log("op1 = " + op1 + ", op2 = " + op2); let result = Array.from(string).sort().join('')
reply.writeInt(op1 + op2); console.log(printLog + ` result=${result}`)
reply.writeString(result)
} else { } else {
console.log("ServiceAbility unknown request code"); console.log(printLog + ` unknown request code`)
} }
return true; return true;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册