1 2# 分布式数据管理子系统ChangeLog 3 4## cl.distributeddatamgr.1 @ohos.data.UDMF.d.ts拆分为@ohos.data.unifiedDataChannel.d.ts和@ohos.data.uniformTypeDescriptor.d.ts 5 6**变更影响** 7 8该变更为不兼容变更,原@ohos.data.UDMF.d.ts拆分为@ohos.data.unifiedDataChannel.d.ts和@ohos.data.uniformTypeDescriptor.d.ts。 9将原@ohos.data.UDMF.d.ts中定义的枚举类UnifiedDataType移动到@ohos.data.uniformTypeDescriptor.d.ts中并改名为UniformDataType, 10剩余接口定义移动到@ohos.data.unifiedDataChannel.d.ts中不做变化。 11 12**关键接口/组件变更** 13 14拆分前UnifiedDataType枚举类的定义: 15 16 | 名称 | 值 | 说明 | 17|----------------------------|------------------------------|-----------| 18| TEXT | 'Text' | 文本类型。 | 19| PLAIN_TEXT | 'Text.PlainText' | 纯文本类型。 | 20| HYPERLINK | 'Text.Hyperlink' | 超链接类型。 | 21| HTML | 'Text.HTML' | 富文本类型。 | 22| FILE | 'File' | 文件类型。 | 23| IMAGE | 'File.Media.Image' | 图片类型。 | 24| VIDEO | 'File.Media.Video' | 视频类型。 | 25| AUDIO | 'File.Media.Audio' | 音频类型。 | 26| FOLDER | 'File.Folder' | 文件夹类型。 | 27| SYSTEM_DEFINED_RECORD | 'SystemDefinedType' | 系统服务数据类型。 | 28| SYSTEM_DEFINED_FORM | 'SystemDefinedType.Form' | 卡片类型。 | 29| SYSTEM_DEFINED_APP_ITEM | 'SystemDefinedType.AppItem' | 图标类型。 | 30| SYSTEM_DEFINED_PIXEL_MAP | 'SystemDefinedType.PixelMap' | 二进制图片类型。 | 31| APPLICATION_DEFINED_RECORD | 'ApplicationDefinedType' | 应用自定义类型。 | 32 33拆分后改名为UniformDataType枚举类的定义: 341、删除了枚举值定义SYSTEM_DEFINED_RECORD和APPLICATION_DEFINED_RECORD。 352、枚举值SYSTEM_DEFINED_FORM改名为OPENHARMONY_FORM,枚举值SYSTEM_DEFINED_APP_ITEM改名为OPENHARMONY_APP_ITEM,枚举值SYSTEM_DEFINED_PIXEL_MAP改名为OPENHARMONY_PIXEL_MAP。 363、枚举值的字符串定义发生了变化。 37 38 | 名称 | 值 | 说明 | 39|----------------------------|------------------------------|-----------| 40| TEXT | 'general.text' | 文本类型。 | 41| PLAIN_TEXT | 'general.plain-text' | 纯文本类型。 | 42| HYPERLINK | 'general.hyperlink' | 超链接类型。 | 43| HTML | 'general.html' | 富文本类型。 | 44| FILE | 'general.file' | 文件类型。 | 45| IMAGE | 'general.image' | 图片类型。 | 46| VIDEO | 'general.video' | 视频类型。 | 47| AUDIO | 'general.audio' | 音频类型。 | 48| FOLDER | 'general.folder' | 文件夹类型。 | 49| OPENHARMONY_FORM | 'openharmony.form' | 卡片类型。 | 50| OPENHARMONY_APP_ITEM | 'openharmony.app-item' | 图标类型。 | 51| OPENHARMONY_PIXEL_MAP | 'openharmony.pixel-map' | 二进制图片类型。 | 52 53**适配指导** 54 55本次变更主要有以下几点需要开发人员适配: 561、将前文中的枚举值变化进行相应适配。 572、将导入模块由修改前的@ohos.data.UDMF模块更改为@ohos.data.unifiedDataChannel和@ohos.data.uniformTypeDescriptor两个模块。 583、根据导入模块的变化,将命名空间UDMF替换成对应的导入模块名,UnifiedDataType替换为UniformDataType。 59 60变更前代码示例: 61 62``` 63// 导入@ohos.data.UDMF模块 64import UDMF from '@ohos.data.UDMF'; 65 66// 创建一个统一数据对象实例 67let unifiedData = new UDMF.UnifiedData(image); 68 69// 创建纯文本数据类型记录,将其添加到刚才创建的UnifiedData对象 70let plainText = new UDMF.PlainText(); 71plainText.textContent = 'this is textContent of plainText'; 72unifiedData.addRecord(plainText); 73 74// 遍历每条记录,判断该记录的数据类型,转换为子类对象,得到原数据记录 75let records = unifiedData.getRecords(); 76for (let i = 0; i < records.length; i ++) { 77 // 读取该数据记录的类型 78 let type = records[i].getType(); 79 switch (type) { 80 case UDMF.UnifiedDataType.IMAGE: 81 // 转换得到原图片数据记录 82 let image = <UDMF.Image>(records[i]); 83 break; 84 case UDMF.UnifiedDataType.PLAIN_TEXT: 85 // 转换得到原文本数据记录 86 let plainText = <UDMF.PlainText>(records[i]); 87 break; 88 default: 89 break; 90 } 91} 92``` 93 94变更后代码示例: 95 96``` 97// 导入@ohos.data.unifiedDataChannel和@ohos.data.uniformTypeDescriptor模块 98import UDC from '@ohos.data.unifiedDataChannel'; 99import UTD from '@ohos.data.uniformTypeDescriptor'; 100 101// 创建一个统一数据对象实例 102let unifiedData = new UDC.UnifiedData(image); 103 104// 创建纯文本数据类型记录,将其添加到刚才创建的UnifiedData对象 105let plainText = new UDC.PlainText(); 106plainText.textContent = 'this is textContent of plainText'; 107unifiedData.addRecord(plainText); 108 109// 遍历每条记录,判断该记录的数据类型,转换为子类对象,得到原数据记录 110let records = unifiedData.getRecords(); 111for (let i = 0; i < records.length; i ++) { 112 // 读取该数据记录的类型 113 let type = records[i].getType(); 114 switch (type) { 115 case UTD.UniformDataType.IMAGE: 116 // 转换得到原图片数据记录 117 let image = <UDC.Image>(records[i]); 118 break; 119 case UTD.UniformDataType.PLAIN_TEXT: 120 // 转换得到原文本数据记录 121 let plainText = <UDC.PlainText>(records[i]); 122 break; 123 default: 124 break; 125 } 126} 127``` 128