Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
1f14bb8f
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看板
未验证
提交
1f14bb8f
编写于
5月 11, 2023
作者:
O
openharmony_ci
提交者:
Gitee
5月 11, 2023
浏览文件
操作
浏览文件
下载
差异文件
!17866 【docs】增加修改InputMethodExtensionAbility使用场景说明
Merge pull request !17866 from cy7717/master
上级
439f19fa
1e1813d6
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
9 addition
and
10 deletion
+9
-10
zh-cn/application-dev/application-models/extensionability-overview.md
...ation-dev/application-models/extensionability-overview.md
+1
-1
zh-cn/application-dev/application-models/inputmethodextentionability.md
...ion-dev/application-models/inputmethodextentionability.md
+8
-9
未找到文件。
zh-cn/application-dev/application-models/extensionability-overview.md
浏览文件 @
1f14bb8f
...
@@ -11,7 +11,7 @@ ExtensionAbility组件是基于特定场景(例如服务卡片、输入法等
...
@@ -11,7 +11,7 @@ ExtensionAbility组件是基于特定场景(例如服务卡片、输入法等
-
[
WorkSchedulerExtensionAbility
](
../reference/apis/js-apis-WorkSchedulerExtensionAbility.md
)
:WORK_SCHEDULER类型的ExtensionAbility组件,用于提供延迟任务回调实现的能力。
-
[
WorkSchedulerExtensionAbility
](
../reference/apis/js-apis-WorkSchedulerExtensionAbility.md
)
:WORK_SCHEDULER类型的ExtensionAbility组件,用于提供延迟任务回调实现的能力。
-
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod.md
)
:INPUT_METHOD类型的ExtensionAbility组件,
提供对输入法框架的管理,包括隐藏输入法、查询已安装的输入法列表和显示输入法选择对话框
。
-
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod.md
)
:INPUT_METHOD类型的ExtensionAbility组件,
用于开发输入法应用
。
-
[
ServiceExtensionAbility
](
../reference/apis/js-apis-app-ability-serviceExtensionAbility.md
)
:SERVICE类型的ExtensionAbility组件,用于提供后台服务场景相关能力。
-
[
ServiceExtensionAbility
](
../reference/apis/js-apis-app-ability-serviceExtensionAbility.md
)
:SERVICE类型的ExtensionAbility组件,用于提供后台服务场景相关能力。
...
...
zh-cn/application-dev/application-models/inputmethodextentionability.md
浏览文件 @
1f14bb8f
# InputMethodExtensionAbility开发指南
# InputMethodExtensionAbility开发指南
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
是inputMethod类型的ExtensionAbility组件,提供输入法框架服务相关扩展能力。
## 使用场景
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
基于
[
ExtensionAbility
](
extensionability-overview.md
)
框架,用于开发输入法应用。
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
可以被其他组件启动或连接,并根据调用者的请求信息在后台处理相关事务
。
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
实例及其所在的ExtensionAbility进程的整个生命周期,都是由输入法框架进行调度管理。输入法框架提供了
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
基类,开发者需要派生此基类,以实现输入法应用生命周期开始和销毁时的相关初始化操作和资源清理工作等
。
[
InputMethodExtensionAbility
](
../reference/apis/js-apis-inputmethod-extension-ability.md
)
通过
[
InputMethodExtensionContext
](
../reference/apis/js-apis-inputmethod-extension-context.md
)
提供相关能力。
InputMethodExtensionAbility通过
[
InputMethodExtensionContext
](
../reference/apis/js-apis-inputmethod-extension-context.md
)
提供相关能力。
## 实现一个输入法应用
## 实现一个输入法应用
...
@@ -67,7 +67,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
...
@@ -67,7 +67,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
onDestroy
()
{
onDestroy
()
{
console
.
log
(
"
onDestroy.
"
);
console
.
log
(
"
onDestroy.
"
);
this
.
context
.
destroy
();
this
.
keyboardController
.
onDestroy
();
// 销毁窗口并去注册事件监听
}
}
}
}
```
```
...
@@ -103,10 +103,9 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
...
@@ -103,10 +103,9 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
public
onDestroy
():
void
// 应用生命周期销毁
public
onDestroy
():
void
// 应用生命周期销毁
{
{
this
.
unRegisterListener
();
//
注销
事件监听
this
.
unRegisterListener
();
//
去注册
事件监听
let
win
=
windowManager
.
findWindow
(
this
.
windowName
);
let
win
=
windowManager
.
findWindow
(
this
.
windowName
);
win
.
destroyWindow
();
// 销毁窗口
win
.
destroyWindow
();
// 销毁窗口
this
.
mContext
.
terminateSelf
();
// 销毁InputMethodExtensionAbility服务
}
}
private
initWindow
():
void
// 初始化窗口
private
initWindow
():
void
// 初始化窗口
...
@@ -156,7 +155,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
...
@@ -156,7 +155,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
})
})
globalThis
.
inputAbility
.
on
(
'
inputStop
'
,
(
imeId
)
=>
{
globalThis
.
inputAbility
.
on
(
'
inputStop
'
,
(
imeId
)
=>
{
if
(
imeId
==
"
包名/Ability名
"
)
{
if
(
imeId
==
"
包名/Ability名
"
)
{
this
.
onDestroy
();
this
.
mContext
.
destroy
();
// 销毁InputMethodExtensionAbility服务
}
}
});
});
}
}
...
@@ -230,7 +229,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
...
@@ -230,7 +229,7 @@ InputMethodExtensionAbility通过[InputMethodExtensionContext](../reference/apis
同时在resources/base/profile/main_pages.json文件的src字段中添加此文件路径。
同时在resources/base/profile/main_pages.json文件的src字段中添加此文件路径。
```
ts
```
e
ts
import { numberSourceListData, sourceListType } from './keyboardKeyData'
import { numberSourceListData, sourceListType } from './keyboardKeyData'
@Component
@Component
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录