# DistributedDemo **Repository Path**: cxshu/distributed-demo ## Basic Information - **Project Name**: DistributedDemo - **Description**: HarmonyOS分布式数据库操作示例 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-06-04 - **Last Updated**: 2022-01-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 1)、配置分布式数据传输的权限 (1)、在config。json中配置权限 ``` "module": { ... "reqPermissions": [ { "name": "ohos.permission.DISTRIBUTED_DATASYNC" } ] } ``` (2)、在MainAbility中显示声明需要的权限 `requestPermissionsFromUser(new String[]{"ohos.permission.DISTRIBUTED_DATASYNC"}, 0);` ### 2)、获取/创建分布式单版本数据库 (1)、根据配置构造分布式数据库管理类实例 ``` Context context; ... // 根据应用上下文创建KvManagerConfig对象 KvManagerConfig config = new KvManagerConfig(context); // 创建分布式数据库管理器实例 KvManager kvManager = KvManagerFactory.getInstance().createKvManager(config); ``` (2)、获取/创建单版本分布式数据库。 ``` Options options = new Options(); options.setCreateIfMissing(true).setEncrypt(false).setKvStoreType(KvStoreType.SINGLE_VERSION); String storeID = "testApp"; // 通过分布式数据库管理器实例获取数据库 SingleKvStore singleKvStore = kvManager.getKvStore(options , storeID); ``` ### 3)、操作数据库 (1)、写入数据 ``` // key, value singleKvStore.putString("test", "我喜欢鸿蒙"); ``` (2)、读取数据 `singleKvStore.getString("test");` (3)、删除数据 `singleKvStore.delete("test");` (4)、关闭数据库 `kvManager.closeKvStore(singleKvStore);` (5)、删除数据库 `kvManager.deleteKvStore(storeId);`