为应用程序配置包名
EziApp 通过包名来识别不同的应用程序。
包名不仅是应用的全局唯一标识符,也是 EziApp 在 权限管理 与 数据存储 中的核心依据。包名冲突会严重涉及数据安全,所以开发者在开发时需要主动遵守安全规范,EziApp 也被设计为当冲突产生时 拒绝启动 或者 清除程序数据。
EziApp 目前还没有一个严格的包名身份验证机构,所以对于一台电脑来说包名是以先安装的应用为准的。为了减少包名冲突,开发者应当自觉选择一个难以发生冲突的包名以防止未来产生新的麻烦。
包名的配置位于文件 ezi.config.ts 中,这个文件通常是自动生成的。其中 package 为包名配置。
ts
import { defineConfig } from "@eziapp-org/bridge";
export default defineConfig({
application: {
package: "com.ezi.myapp",
// 其他内容...
},
// 其他内容...
});package 字段应当设置为全局唯一的标识符,通常推荐采用 域名倒序 的命名方式,例如:
com.example.myapporg.company.product
EziApp 使用包名来区分不同的应用程序,并为每个应用程序单独存储数据。
如果包名冲突,会导致应用 拒绝启动,或者为了安全起见触发 应用程序数据清除。
最佳实践
- 唯一性:确保包名在全局范围内唯一,避免与其他应用冲突。
- 稳定性:包名一旦确定,不应随意修改,否则会导致原有数据无法识别。
- 规范性:推荐使用域名倒序方式,既能保证唯一性,又能体现组织或项目来源。
- 安全性:包名与应用数据绑定,冲突时系统会清理数据以防止泄露或混乱。
- 扩展性:同一组织的不同应用可以共享前缀,例如:
org.company.app1、org.company.app2。