From f68aab1fe41c2d003662a78604984e230f34e153 Mon Sep 17 00:00:00 2001 From: zhangxingxia Date: Wed, 24 Aug 2022 10:09:53 +0800 Subject: [PATCH 1/3] add mtp code Signed-off-by: zhangxingxia --- .../FileExtensionAbility.ts | 2 +- .../ets/FileExtensionAbility/VolumeManager.ts | 30 +++++++++++++++++-- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/FileExtensionAbility.ts b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/FileExtensionAbility.ts index 680e6b0e..73362303 100644 --- a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/FileExtensionAbility.ts +++ b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/FileExtensionAbility.ts @@ -38,7 +38,7 @@ export default class FileExtAbility extends Extension { onCreate(want) { init(); onReceiveEvent(function (data) { - if (data.event == 'usual.event.data.VOLUME_MOUNTED') { + if (data.event == 'usual.event.data.VOLUME_MOUNTED' || data.event == 'usual.event.data.MTPDEV_MOUNTED_SUCCESSED') { if (callbackFun != null) { let uri = path2uri('', data.parameters.path); callbackFun(data.parameters.type, NotifyType.DEVICE_ONLINE, uri); diff --git a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts index 76e391d0..c72ae1da 100644 --- a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts +++ b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts @@ -15,14 +15,19 @@ // @ts-nocheck import volumeManager from '@ohos.volumeManager' import fileExtensionInfo from "@ohos.fileExtensionInfo" +import mtpmanager from "@ohos.mtpManager" +import hilog from '@ohos.hilog' + if (!globalThis.volumeInfoList) { globalThis.volumeInfoList = []; } const FLAG = fileExtensionInfo.FLAG; const DEVICE_TYPE = fileExtensionInfo.DeviceType; +const DOMAIN_CODE = 0x0001; +const TAG = 'js_server'; + function init() { - volumeManager.getAllVolumes().then((volumes) => { - let flags = FLAG.SUPPORTS_WRITE | + let flags = FLAG.SUPPORTS_WRITE | FLAG.SUPPORTS_DELETE | FLAG.SUPPORTS_RENAME | FLAG.SUPPORTS_COPY | @@ -30,6 +35,7 @@ function init() { FLAG.SUPPORTS_REMOVE | FLAG.DIR_SUPPORTS_CREATE | FLAG.DIR_PREFERS_LAST_MODIFIED; + volumeManager.getAllVolumes().then((volumes) => { for (let i = 0; i < volumes.length; i++) { let volume = volumes[i]; let volumeInfo = { @@ -44,6 +50,26 @@ function init() { } globalThis.volumeInfoList.push(volumeInfo); } + }).catch(function(err){ + hilog.error(DOMAIN_CODE, TAG, 'getAllVolumes error ' + err.message); + }); + mtpmanager.getAllMtpDevs().then((mtpList)=>{ + for(let i =0;i Date: Wed, 24 Aug 2022 10:24:02 +0800 Subject: [PATCH 2/3] mtp code Signed-off-by: zhangxingxia --- .../entry/src/main/ets/FileExtensionAbility/VolumeManager.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts index c72ae1da..d79e33b4 100644 --- a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts +++ b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/VolumeManager.ts @@ -64,7 +64,7 @@ function init() { 'displayName': volume.id, 'deviceId': '', 'flags': flags, - 'type':'MTP' + 'type':DEVICE_TYPE.EXTERNAL_MTP } globalThis.volumeInfoList.push(volumeInfo) } -- Gitee From 71dfae9473029b8d32f6179ec7089c9f7f3e75dc Mon Sep 17 00:00:00 2001 From: zhangxingxia Date: Wed, 24 Aug 2022 10:26:20 +0800 Subject: [PATCH 3/3] mtp code Signed-off-by: zhangxingxia --- .../entry/src/main/ets/FileExtensionAbility/Subcriber.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/Subcriber.ts b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/Subcriber.ts index e113b089..d8e7c5f0 100644 --- a/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/Subcriber.ts +++ b/services/file_extension_hap/entry/src/main/ets/FileExtensionAbility/Subcriber.ts @@ -20,7 +20,11 @@ async function onReceiveEvent(callBack) { "usual.event.data.VOLUME_UNMOUNTED", "usual.event.data.VOLUME_MOUNTED", "usual.event.data.VOLUME_BAD_REMOVAL", - "usual.event.data.VOLUME_EJECT" + "usual.event.data.VOLUME_EJECT", + "usual.event.data.MTPDEV_MOUNTED_SUCCESSED", + "usual.event.data.MTPDEV_MOUNTED_FAILED", + "usual.event.data.MTPDEV_UNMOUNTED_SUCCESSED", + "usual.event.data.MTPDEV_UNMOUNTED_FAILED" ] }; let subscriber = await CommonEvent.createSubscriber(subscribeInfo); -- Gitee