harmony 鸿蒙Connecting to a ServiceAbility from the Stage Model
Connecting to a ServiceAbility from the Stage Model
This topic describes how the two application components of the stage model connect to the ServiceAbility component of the FA model.
UIAbility Accessing a ServiceAbility
A UIAbility accesses a ServiceAbility in the same way as it accesses a ServiceExtensionAbility.
import UIAbility from '@ohos.app.ability.UIAbility';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
import common from '@ohos.app.ability.common';
import Want from '@ohos.app.ability.Want';
import window from '@ohos.window';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
console.info("EntryAbility onCreate");
}
onDestroy() {
console.info("EntryAbility onDestroy")
}
onWindowStageCreate(windowStage: window.WindowStage) {
console.info("EntryAbility onWindowStageCreate")
let want: Want = {
bundleName: "com.ohos.fa",
abilityName: "ServiceAbility",
};
let options: common.ConnectOptions = {
onConnect: (elementName, proxy) => {
console.info("onConnect called.");
},
onDisconnect: (elementName) => {
console.info("onDisconnect called.");
},
onFailed: (code) => {
console.info("onFailed code is: " + code);
}
};
let connectionId = this.context.connectServiceExtensionAbility(want, options);
}
onWindowStageDestroy() {
console.info("EntryAbility onWindowStageDestroy")
}
onForeground() {
console.info("EntryAbility onForeground")
}
onBackground() {
console.info("EntryAbility onBackground")
}
}
ExtensionAbility Accessing a ServiceAbility
The following uses the ServiceExtensionAbility component as an example to describe how an ExtensionAbility accesses a ServiceAbility. A ServiceExtensionAbility accesses a ServiceAbility in the same way as it accesses another ServiceExtensionAbility.
import Extension from '@ohos.app.ability.ServiceExtensionAbility';
import common from '@ohos.app.ability.common';
import Want from '@ohos.app.ability.Want';
export default class ServiceExtension extends Extension {
onCreate(want: Want) {
console.info("ServiceExtension onCreate")
}
onDestroy() {
console.info("ServiceExtension onDestroy")
}
onRequest(want: Want, startId: number) {
console.info("ServiceExtension onRequest")
let wantFA: Want = {
bundleName: "com.ohos.fa",
abilityName: "ServiceAbility",
};
let options: common.ConnectOptions = {
onConnect: (elementName, proxy) => {
console.info("onConnect called.");
},
onDisconnect: (elementName) => {
console.info("onDisconnect called.");
},
onFailed: (code) => {
console.info("onFailed code is: " + code);
}
};
let connectionId = this.context.connectServiceExtensionAbility(wantFA, options);
}
}
你可能感兴趣的鸿蒙文章
harmony 鸿蒙Using Explicit Want to Start an Application Component
harmony 鸿蒙Using Implicit Want to Open a Website
harmony 鸿蒙AbilityStage Component Container
harmony 鸿蒙Accessing a DataAbility
harmony 鸿蒙Accessing a DataShareExtensionAbility from the FA Model
harmony 鸿蒙AccessibilityExtensionAbility
harmony 鸿蒙Common action and entities Values
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦