概览:本文深入讲解HarmonyOS应用分身能力,配置multiAppMode开启分身功能、设置最大分身数量,以及自定义应用的名称、图标等。
什么是应用分身?
应用分身是HarmonyOS系统提供的原生能力,允许单个应用在设备上创建多个独立的运行实例,每个实例拥有完全隔离的执行环境和数据空间。
技术本质:
1、不是应用复制,而是身份分身。
2、基于同一应用包的多实例化技术。
3、系统级别的进程隔离机制。
4、数据沙箱环境的并行运行。
应用分身与应用本体之间的关系
1、主应用和分身应用共享同一个应用。例如,当主应用更新/升级时,主应用与分身应用都会同步更新,包括应用的图标(icon)、名称(label)和应用的新特性等。
2、主应用和分身应用,其对应的使能和相关配置都是独立的,数据也是彼此隔离。
3、主应用被卸载时,所有分身应用也会同步卸载。卸载分身应用时,不会影响主应用。
应用分身开发
配置应用分身:在工程项目中对AppScope/app.json5配置文件配置multiAppMode字段。
{
"app": {
"bundleName": "com.example.myapplication",
"multiAppMode": {
"multiAppModeType": 'appClone', // 开启分身功能
"maxCount": 3 // 设置最大分身数量
}
}
}
更改App名称:MyApplication/entry/src/main/resources/base/element/string.json
{
"string": [
{
"name": "EntryAbility_label",
"value": "App名称"
}
]
}
更改App图标:MyApplication/AppScope/resources/base/media/foreground.png
应用分身使用场景
| 场景 | 使用方法 | 核心价值 | 典型应用 |
|---|---|---|---|
| 工作生活分离场景 | 主账号:个人社交圈;分身①:工作业务沟通;分身②:兴趣社群交流 | 消息独立接收,避免信息混杂;朋友圈内容隔离,保护隐私;支付账户安全分离;不同身份场景切换无缝 | 聊天软件、QQ、钉钉、飞书 |
| 游戏应用多账号并行场景 | 主号:核心养成账号;小号:资源辅助账号;测试号:新版本体验 | 多角色协同游戏;资源账号扶持主号;测试服正式服并行;账号数据安全隔离 | MMORPG、策略游戏、卡牌游戏 |
| 办公应用隔离场景 | 销售部门:客户管理实例;技术部门:开发测试实例;管理部门:数据统计实例 | 数据权限精细控制;业务流程独立运行;安全审计追踪清晰;部门间数据隔离保护 | CRM、ERP、OA办公系统 |
| 技术开发测试场景 | 开发环境:功能开发验证;测试环境:质量检测;生产环境:线上问题复现 | A/B测试同步进行;问题调试效率提升;发布风险有效控制 | APP开发、软件测试、系统调试 |