本示例实现了一个inputMethod独立extension,并验证独立extension与UIExtension之间的文件共享,实现了以下几点功能:
1.实现一个inputMethod独立extension:InputMethodService.ts。
2.UIExtension与inputMethod独立extension实现文件共享。
首页 | 访问模块级别独立沙箱文件 | 访问应用级别独立沙箱文件 |
---|---|---|
启动一个主应用 "hdc shell aa start -a EntryAbility -b com.example.contexttest"。点击前两个按钮,uiAbility分别以dataGroupId为" test1"、"test2"产生的共享目录下创建共享文件,创建成功后会有创建成功弹框提示,创建失败会有创建失败弹框提示;
启动一个inputMethod独立extension应用: "hdc shell aa start -a inputMethod -b com.example.contexttest",inputMethod可在dataGroupId为"test1" 产生的共享目录下修改共享文件,修改成功查看打印相关日志:1:the content of file:1:inputMethod Try to write str.,修改失败查看相关打印日志:1:fs.openSync err: {"code":13900002};在dataGroupId为" test2"产生的共享目录下修改共享文件,修改成功查看打印相关日志:2:the content of file:2:inputMethod Try to write str.,修改失败查看相关打印日志:2:fs.openSync err: {"code":13900002};
点击第三个按钮,UIAbility访问inputMethod module级别的独立extension的沙箱文件,访问成功会有访问成功弹框提示;访问失败会有访问失败弹框提示且页面的message更新为moduleFailed;预期结果访问失败,证明inputMethod是独立沙箱;
点击第四个按钮,UIAbility访问inputMethod应用级别的独立extension的沙箱文件,访问成功会有访问成功弹框提示;访问失败会有访问失败弹框提示且页面的message更新为appFailed;预期结果访问失败,证明inputMethod是独立沙箱;
entry/src/main/ets/
|---entryability
|---inputMethodextability
|---pages
|---inputMethodService.ts // input独立extension
|---pages
| |---Index.ets // 首页
entry/src/ohosTest/ets/
|---test
| |---Ability.test.ets // xts用例
示例分为两个方面
inputMethod独立extension与UIExtension实现共享目录下文件共享:
inputMethod独立extension访问其独立沙箱文件且能正常操作文件,另外的应用不能访问其沙箱文件:
不涉及。
不涉及。
1.本示例仅支持标准系统上运行,支持设备:RK3568。
2.本示例为Stage模型,支持API12版本SDK,SDK版本号(API Version 12 Release),镜像版本号(5.0.0.20)。
3.本示例需要使用DevEco Studio 版本号(4.1.0.400)及以上版本才可编译运行。
4.本示例需要使用Full SDK编译。使用Full SDK时需要手动从镜像站点获取,并在DevEco Studio中替换,具体操作可参考替换指南。
5.本实例需要用到相同dataGroupId实现共享文件,所以需要在签名证书UnsgnedReleasedProfileTemplate.json中的"bundle-info"配置项中添加配置如:" data-group-ids":["test1","test2","test3"],同时需要在module.json5中的extensionAbilities中添加配置如:" dataGroupIds": ["test1"] ,只有当前extension和应用配置相同dataGroupId,才可以和应用共享这一个dataGroupId生成的目录。具体操作指南可参考HarmonyAppProvision配置文件说明。
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo code/BasicFeature/Extension/Contexttest/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。