diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/README_zh.md b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/README_zh.md index a0d735345a12e2f177fc61429fd823dbd0b2191c..d6d157186b5db77789b55ca9e4360d9eb12e2699 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/README_zh.md +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/README_zh.md @@ -2,7 +2,7 @@ ### 介绍 -企业设备管理扩展能力,是MDM应用必备组件。当开发者为企业开发MDM(Mobile Device Management)应用时,需继承EnterpriseAdminExtensionAbility,在EnterpriseAdminExtensionAbility实例中实现MDM业务逻辑,EnterpriseAdminExtensionAbility实现了系统管理状态变化通知功能。本示例涉及使用接口:@ohos.enterprise.adminManager中的disableAdmin接口,@ohos.enterprise.restrictions中的setDisallowedPolicy、getDisallowedPolicy接口,以及@ohos.enterprise.deviceControl中的operateDevice接口。 +企业设备管理扩展能力,是MDM应用必备组件。当开发者为企业开发MDM(Mobile Device Management)应用时,需继承EnterpriseAdminExtensionAbility,在EnterpriseAdminExtensionAbility实例中实现MDM业务逻辑,EnterpriseAdminExtensionAbility实现了系统管理状态变化通知功能。本示例依照开发指南[MDM Kit(企业设备管理)](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/mdm/Readme-CN.md)进行编写。本示例涉及使用接口:@ohos.enterprise.adminManager中的[disableAdmin](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-enterprise-adminmanager#adminmanagerdisableadmin)接口,@ohos.enterprise.restrictions中的[setDisallowedPolicy](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-enterprise-restrictions#restrictionssetdisallowedpolicy)、[getDisallowedPolicy](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-enterprise-restrictions#restrictionsgetdisallowedpolicy)接口,以及@ohos.enterprise.deviceControl中的[operateDevice](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-enterprise-devicecontrol#devicecontroloperatedevice)接口。 ### 效果预览 @@ -29,14 +29,16 @@ entry/src/main/ets/ |---enterpriseadminability | |---EnterpriseAdminAbility.ets // 数据类型 |---entryability -| |---EntryAbility.ets +| |---EntryAbility.ets // 程序入口 |---pages | |---component // 自定义组件目录 | |---headComponent.ets // 自定义AtionBar | |---normalButtonComponent.ets // 自定义通用Button -|---launcherPage.ets // 启动页 -|---mainPage.ets // 主页 -|---readStatementPage.ets // 使用声明页 +| |---mainPage.ets // 主页 +|---utils +| |---CommonEventManagerHelper.ets // 事件管理 +| |---CommonEventValue.ets // 事件定义 +| |---DataPreferencesHelper.ets // 数据工具 ``` ### 具体实现 @@ -58,9 +60,9 @@ entry/src/main/ets/ ### 约束与限制 -1. 本示例已适配API version 12版本SDK,版本号:5.0.0.17。 +1. 本示例已适配API version 18版本SDK,版本号:5.1.0.59。 -2. 本示例需要使用DevEco Studio NEXT Developer Beta2 (Build Version: 5.0.3.500 构建 2024年7月17日)及以上版本才可编译运行。 +2. 本示例需要使用DevEco Studio 5.1.0 Canary1 (Build Version: 5.1.0.230 构建 2025年1月10日)及以上版本才可编译运行。 ### 下载 diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/build-profile.json5 b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/build-profile.json5 index 58824ccc7512dbde60c2fd2bd51989529b4e7181..826c65760daba7c5d4fb1dcee85726ac879f80f7 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/build-profile.json5 +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/build-profile.json5 @@ -20,7 +20,7 @@ { "name": "default", "signingConfig": "default", - "compileSdkVersion": 12, + "compileSdkVersion": 18, "compatibleSdkVersion": 12, "runtimeOS": "OpenHarmony" } diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/oh-package.json5 b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/oh-package.json5 index bed1b93673621c51ec153861abb4f379ab9e047f..f76ff34fba0f02c2dc92785345d30680c71f78b2 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/oh-package.json5 +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/oh-package.json5 @@ -18,7 +18,7 @@ "devDependencies": {}, "name": "entry", "description": "example description", - "repository": {}, + "repository": "", "version": "1.0.0", "dependencies": {} } diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/common/Logger.ts b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/common/Logger.ts index d149de79c23911a9ab4cdeb794dafed000b93941..5bb83ca5cd382d8269adfabc6e62887af503f883 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/common/Logger.ts +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/common/Logger.ts @@ -17,7 +17,7 @@ import hilog from '@ohos.hilog'; class Logger { private domain: number; - private prefix: string = 'MdmSample'; + private prefix: string = 'Sample_Mdm'; private format: string = '%{public}s, %{public}s'; constructor(prefix: string) { diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/enterpriseadminability/EnterpriseAdminAbility.ets b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/enterpriseadminability/EnterpriseAdminAbility.ets index 975970ae27354faf48c2789d380fb15cb6714476..ffe27258d2446d3614bf10d881f64e07b6e6d492 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/enterpriseadminability/EnterpriseAdminAbility.ets +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/enterpriseadminability/EnterpriseAdminAbility.ets @@ -45,6 +45,10 @@ export default class EnterpriseAdminAbility extends EnterpriseAdminExtensionAbil this.dataPreferenceHelper = new DataPreferencesHelper(this.context.getApplicationContext()); } this.commonEventManagerHelper.createSubscriber(this.subscribeInfo, (error, data) => { + if (error) { + Logger.error(`PublishCallBack err = ${JSON.stringify(error)}`); + return; + } this.handleEvent(data.event); }); } @@ -111,7 +115,7 @@ export default class EnterpriseAdminAbility extends EnterpriseAdminExtensionAbil } onAppStart(bundleName: string): void { - Logger.error(`onAppStart bundleName:` + bundleName); + Logger.info(`onAppStart bundleName:` + bundleName); } private getStringByResource(res: Resource): string { diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/headComponent.ets b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/headComponent.ets index fca665cd89f9172055ac9133785150f6e1cb63ca..461d6d9acdcaa98082d2ae0d6d9500c17c8df56e 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/headComponent.ets +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/headComponent.ets @@ -13,7 +13,7 @@ * limitations under the License. */ -import { router } from '@kit.ArkUI'; +import { Router } from '@ohos.arkui.UIContext'; export class HeadComponentController { public title?: Resource | string; @@ -26,6 +26,7 @@ export struct HeadComponent { title: '', needBack: true } + private router = this.getUIContext().getRouter() as Router; build() { Row() { @@ -37,17 +38,17 @@ export struct HeadComponent { .width(21.8) .height(19.6) .onClick(() => { - router.back() + this.router.back() }) Text(this.controller.title) .fontSize(20) .fontWeight(FontWeight.Bold) - .margin({left: 17.4}) + .margin({ left: 17.4 }) } .height(60) .backgroundColor($r('sys.color.white')) - .padding({top: 13, bottom: 15, left: 28.3}) + .padding({ top: 13, bottom: 15, left: 28.3 }) } } .height(60) diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/normalButtonComponent.ets b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/normalButtonComponent.ets index 50684755236dc200f9509f4b5860e06b4a2368a3..01517a23d8f848e7e9fe65c226825ffc02741618 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/normalButtonComponent.ets +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/component/normalButtonComponent.ets @@ -15,7 +15,7 @@ @Component export struct NormalButtonComponent { - private btnText: string | Resource = $r('app.string.app_name'); + btnText: string | Resource = $r('app.string.app_name'); build() { Row() { diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/mainPage.ets b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/mainPage.ets index 0f57accc2b75b67ef5ad8d10ef8c0e98dbf32c20..61cf4fbd233f09c35b2205a9cfd2e6579490ccf6 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/mainPage.ets +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/ets/pages/mainPage.ets @@ -18,7 +18,7 @@ import Logger from '../common/Logger'; import { NormalButtonComponent } from './component/normalButtonComponent'; import { HeadComponent, HeadComponentController } from './component/headComponent'; import { CommonEventValue } from '../utils/CommonEventValue'; -import { promptAction } from '@kit.ArkUI'; +import { PromptAction } from '@ohos.arkui.UIContext'; import { CommonEventManagerHelper } from '../utils/CommonEventManagerHelper'; import { common } from '@kit.AbilityKit'; import { DataPreferencesHelper } from '../utils/DataPreferencesHelper'; @@ -42,6 +42,7 @@ struct MainPage { CommonEventValue.EVENT_RESULT, ], }; + private promptAction = this.getUIContext().getPromptAction() as PromptAction; aboutToAppear(): void { if (this.dataPreferenceHelper == null) { @@ -58,7 +59,7 @@ struct MainPage { private isNeedToShowToast(action: () => void) { if (this.isFirstActivated) { - promptAction.showToast({ + this.promptAction.showToast({ message: $r('app.string.please_use_hdc_active_device'), duration: 2000 }); @@ -120,7 +121,7 @@ struct MainPage { Flex({ alignItems: ItemAlign.Center }) { NormalButtonComponent({ btnText: $r('app.string.enable_admin') }) .onClick(() => { - promptAction.showToast({ + this.promptAction.showToast({ message: $r('app.string.please_use_hdc_active_device'), duration: 2000 }); diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/module.json5 b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/module.json5 index 77ea5f6cde47c021e2a44e093bfa417099c8ff88..c8946c8d60510ac090292390696ded36d6fdeae8 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/module.json5 +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/main/module.json5 @@ -58,7 +58,7 @@ ], "requestPermissions": [ { - "name": "ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN", + "name": "ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN" }, { "name": "ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS" diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/TestRunner/OpenHarmonyTestRunner.ts b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/TestRunner/OpenHarmonyTestRunner.ts index dd37dcf45e8c89e4326a591a421068a1abe86203..c4de1ddd5907c59455b1ba0bdd767529b9ad7fe8 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/TestRunner/OpenHarmonyTestRunner.ts +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/TestRunner/OpenHarmonyTestRunner.ts @@ -15,7 +15,7 @@ import hilog from '@ohos.hilog'; import TestRunner from '@ohos.application.testRunner'; -import AbilityDelegatorRegistry from '@ohos.application.abilityDelegatorRegistry'; +import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; var abilityDelegator = undefined; var abilityDelegatorArguments = undefined; diff --git a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/test/Ability.test.ets b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/test/Ability.test.ets index 6bb14438eeee6f53a477a53320cfd1277b6e1fde..e4361e60ca8887abad30ad399a75f05ac8217476 100644 --- a/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/test/Ability.test.ets +++ b/code/DocsSample/EnterpriseAdminExtensionAbility/EnterpriseAdminExtensionAbility/entry/src/ohosTest/ets/test/Ability.test.ets @@ -18,7 +18,7 @@ import { describe, it, expect } from '@ohos/hypium'; import { Driver, ON } from '@ohos.UiTest'; import AbilityDelegatorRegistry from '@ohos.app.ability.abilityDelegatorRegistry'; -const TAG = '[MdmSample]'; +const TAG = '[Sample_Mdm]'; const DOMAIN = 0xF811; const BUNDLE = 'EnterpriseAdminAbility_'; const BUNDLE_NAME = 'com.example.mdmsample'; @@ -47,7 +47,7 @@ export default function abilityTest() { }); it(BUNDLE + 'onEnableAdmin', 0, async () => { hilog.info(DOMAIN, TAG, BUNDLE + 'onEnableAdmin begin'); - let driver = await Driver.create(); + let driver = Driver.create(); await driver.delayMs(1000); hilog.info(DOMAIN, TAG, BUNDLE + 'onEnableAdmin clickEnableAdmin'); await driver.assertComponentExist(ON.id('enable_admin_id')); @@ -60,7 +60,7 @@ export default function abilityTest() { }); it(BUNDLE + 'onDisableAdmin', 0, async () => { hilog.info(DOMAIN, TAG, BUNDLE + 'onDisableAdmin begin'); - let driver = await Driver.create(); + let driver = Driver.create(); await driver.delayMs(1000); hilog.info(DOMAIN, TAG, BUNDLE + 'onDisableAdmin clickDisableAdmin'); await driver.assertComponentExist(ON.id('disable_admin_id')); @@ -72,7 +72,7 @@ export default function abilityTest() { }); it(BUNDLE + 'onEnableWifi', 0, async () => { hilog.info(DOMAIN, TAG, BUNDLE + 'onEnableWifi begin'); - let driver = await Driver.create(); + let driver = Driver.create(); await driver.delayMs(1000); hilog.info(DOMAIN, TAG, BUNDLE + 'onEnableWifi clickEnableWifi'); await driver.assertComponentExist(ON.id('enable_wifi_id')); @@ -84,7 +84,7 @@ export default function abilityTest() { }); it(BUNDLE + 'onDisableWifi', 0, async () => { hilog.info(DOMAIN, TAG, BUNDLE + 'onDisableWifi begin'); - let driver = await Driver.create(); + let driver = Driver.create(); await driver.delayMs(1000); hilog.info(DOMAIN, TAG, BUNDLE + 'onDisableWifi clickDisableWifi'); await driver.assertComponentExist(ON.id('disable_wifi_id')); @@ -96,7 +96,7 @@ export default function abilityTest() { }); it(BUNDLE + 'onRebootDevice', 0, async () => { hilog.info(DOMAIN, TAG, BUNDLE + 'onRebootDevice begin'); - let driver = await Driver.create(); + let driver = Driver.create(); await driver.delayMs(1000); hilog.info(DOMAIN, TAG, BUNDLE + 'onRebootDevice clickRebootDevice'); await driver.assertComponentExist(ON.id('reboot_device_id'));