The current repo belongs to Closed status, and some functions are restricted. For details, please refer to the description of repo status
1.4K Star 7.4K Fork 8.2K

OpenHarmony/docs
Closed

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
文件
.gitee
docker
en
application-dev
IDL
accessibility
ads-service
ai
application-models
application-test
arkts-utils
basic-services
calendarmanager
connectivity
contacts
database
device-usage-statistics
device
dfx
displaymanager
distributedservice
enterprise-device-management
faqs
ffrt
file-management
form
graphics
graphics3d
inputmethod
internationalization
ipc
mdm
media
napi
network
notification
performance
public_sys-resources
quick-start
reference
apis-ability-kit
figures
Readme-EN.md
_ability_access_control.md
_ability_base.md
_ability_base_element.md
_ability_runtime.md
_bundle.md
_o_h___native_bundle_application_info.md
_o_h___native_bundle_element_name.md
ability__access__control_8h.md
ability__base__common_8h.md
ability__runtime__common_8h.md
application__context_8h.md
c-apis-ability-childprocess.md
context__constant_8h.md
errorcode-DistributedSchedule.md
errorcode-ability.md
errorcode-access-token.md
errorcode-appDomainVerify.md
errorcode-bundle.md
errorcode-screenLockFileManager.md
js-apis-Bundle-BundleStatusCallback-sys.md
js-apis-Bundle-InnerBundleManager-sys.md
js-apis-Bundle-distributedBundle-sys.md
js-apis-Bundle-sys.md
js-apis-Bundle.md
js-apis-ability-ability.md
js-apis-ability-dataUriUtils.md
js-apis-ability-errorCode.md
js-apis-ability-featureAbility.md
js-apis-ability-particleAbility.md
js-apis-ability-wantConstant-sys.md
js-apis-ability-wantConstant.md
js-apis-abilityAccessCtrl-sys.md
js-apis-abilityAccessCtrl.md
js-apis-app-ability-ability.md
js-apis-app-ability-abilityConstant-sys.md
js-apis-app-ability-abilityConstant.md
js-apis-app-ability-abilityLifecycleCallback.md
js-apis-app-ability-abilityManager-sys.md
js-apis-app-ability-abilityManager.md
js-apis-app-ability-abilityStage.md
js-apis-app-ability-actionExtensionAbility.md
js-apis-app-ability-appManager-sys.md
js-apis-app-ability-appManager.md
js-apis-app-ability-appRecovery.md
js-apis-app-ability-application-sys.md
js-apis-app-ability-application.md
js-apis-app-ability-applicationStateChangeCallback.md
js-apis-app-ability-atomicServiceOptions.md
js-apis-app-ability-autoFillExtensionAbility-sys.md
js-apis-app-ability-autoFillManager-sys.md
js-apis-app-ability-autoFillManager.md
js-apis-app-ability-autoStartupManager-sys.md
js-apis-app-ability-childProcess.md
js-apis-app-ability-childProcessArgs.md
js-apis-app-ability-childProcessManager.md
js-apis-app-ability-childProcessOptions.md
js-apis-app-ability-common-sys.md
js-apis-app-ability-common.md
js-apis-app-ability-configuration.md
js-apis-app-ability-configurationConstant.md
js-apis-app-ability-contextConstant.md
js-apis-app-ability-continueManager.md
js-apis-app-ability-dataUriUtils.md
js-apis-app-ability-dialogRequest.md
js-apis-app-ability-dialogSession-sys.md
js-apis-app-ability-embeddableUIAbility.md
js-apis-app-ability-embeddedUIExtensionAbility.md
js-apis-app-ability-environmentCallback.md
js-apis-app-ability-errorManager.md
js-apis-app-ability-extensionAbility.md
js-apis-app-ability-insightIntent-sys.md
js-apis-app-ability-insightIntent.md
js-apis-app-ability-insightIntentContext.md
js-apis-app-ability-insightIntentDriver-sys.md
js-apis-app-ability-insightIntentExecutor.md
js-apis-app-ability-missionManager-sys.md
js-apis-app-ability-openLinkOptions.md
js-apis-app-ability-photoEditorExtensionAbility.md
js-apis-app-ability-photoEditorExtensionContext.md
js-apis-app-ability-quickFixManager-sys.md
js-apis-app-ability-sendableContextManager.md
js-apis-app-ability-serviceExtensionAbility-sys.md
js-apis-app-ability-shareExtensionAbility.md
js-apis-app-ability-startOptions-sys.md
js-apis-app-ability-startOptions.md
js-apis-app-ability-uiAbility.md
js-apis-app-ability-uiExtensionAbility.md
js-apis-app-ability-uiExtensionContentSession-sys.md
js-apis-app-ability-uiExtensionContentSession.md
js-apis-app-ability-uiServiceExtensionAbility-sys.md
js-apis-app-ability-want.md
js-apis-app-ability-wantAgent-sys.md
js-apis-app-ability-wantAgent.md
js-apis-app-ability-wantConstant-sys.md
js-apis-app-ability-wantConstant.md
js-apis-app-appstartup-startupConfig.md
js-apis-app-appstartup-startupConfigEntry.md
js-apis-app-appstartup-startupListener.md
js-apis-app-appstartup-startupManager.md
js-apis-app-appstartup-startupTask.md
js-apis-appControl-sys.md
js-apis-appDomainVerify-sys.md
js-apis-application-abilityManager-sys.md
js-apis-application-appManager-sys.md
js-apis-application-appManager.md
js-apis-application-configuration.md
js-apis-application-configurationConstant.md
js-apis-application-missionManager-sys.md
js-apis-application-want.md
js-apis-bundle-AbilityInfo.md
js-apis-bundle-ApplicationInfo.md
js-apis-bundle-BundleInfo.md
js-apis-bundle-BundleInstaller-sys.md
js-apis-bundle-CustomizeData.md
js-apis-bundle-ElementName.md
js-apis-bundle-HapModuleInfo.md
js-apis-bundle-LauncherAbilityInfo-sys.md
js-apis-bundle-ModuleInfo.md
js-apis-bundle-PermissionDef-sys.md
js-apis-bundle-ShortcutInfo-sys.md
js-apis-bundle-ShortcutInfo.md
js-apis-bundle-remoteAbilityInfo-sys.md
js-apis-bundleManager-AppProvisionInfo-sys.md
js-apis-bundleManager-ApplicationInfo-sys.md
js-apis-bundleManager-BundlePackInfo-sys.md
js-apis-bundleManager-BundleResourceInfo-sys.md
js-apis-bundleManager-LauncherAbilityResourceInfo-sys.md
js-apis-bundleManager-abilityInfo.md
js-apis-bundleManager-applicationInfo.md
js-apis-bundleManager-bundleInfo.md
js-apis-bundleManager-businessAbilityInfo-sys.md
js-apis-bundleManager-dispatchInfo-sys.md
js-apis-bundleManager-elementName.md
js-apis-bundleManager-extensionAbilityInfo.md
js-apis-bundleManager-hapModuleInfo.md
js-apis-bundleManager-launcherAbilityInfo.md
js-apis-bundleManager-metadata.md
js-apis-bundleManager-overlayModuleInfo.md
js-apis-bundleManager-permissionDef-sys.md
js-apis-bundleManager-recoverableApplicationInfo-sys.md
js-apis-bundleManager-remoteAbilityInfo-sys.md
js-apis-bundleManager-sharedBundleInfo-sys.md
js-apis-bundleManager-shortcutInfo-sys.md
js-apis-bundleManager-skill.md
js-apis-bundleManager-sys.md
js-apis-bundleManager.md
js-apis-bundleMonitor-sys.md
js-apis-bundleResourceManager-sys.md
js-apis-businessAbilityRouter-sys.md
js-apis-continuation-continuationExtraParams.md
js-apis-continuation-continuationManager.md
js-apis-continuation-continuationResult.md
js-apis-defaultAppManager-sys.md
js-apis-defaultAppManager.md
js-apis-distributedBundleManager-sys.md
js-apis-distributedMissionManager-sys.md
js-apis-freeInstall-sys.md
js-apis-inner-ability-abilityResult.md
js-apis-inner-ability-connectOptions.md
js-apis-inner-ability-dataAbilityHelper.md
js-apis-inner-ability-dataAbilityOperation.md
js-apis-inner-ability-dataAbilityResult.md
js-apis-inner-ability-startAbilityParameter.md
js-apis-inner-ability-want.md
js-apis-inner-app-appVersionInfo.md
js-apis-inner-app-context.md
js-apis-inner-app-processInfo.md
js-apis-inner-application-EmbeddableUIAbilityContext.md
js-apis-inner-application-abilityFirstFrameStateData-sys.md
js-apis-inner-application-abilityFirstFrameStateObserver-sys.md
js-apis-inner-application-abilityForegroundStateObserver-sys.md
js-apis-inner-application-abilityMonitor.md
js-apis-inner-application-abilityRunningInfo.md
js-apis-inner-application-abilityStageContext.md
js-apis-inner-application-abilityStageMonitor.md
js-apis-inner-application-abilityStartCallback.md
js-apis-inner-application-abilityStateData.md
js-apis-inner-application-appForegroundStateObserver-sys.md
js-apis-inner-application-appStateData.md
js-apis-inner-application-applicationContext-sys.md
js-apis-inner-application-applicationContext.md
js-apis-inner-application-applicationStateObserver.md
js-apis-inner-application-autoFillExtensionContext-sys.md
js-apis-inner-application-autoFillPopupConfig-sys.md
js-apis-inner-application-autoFillRect-sys.md
js-apis-inner-application-autoFillRequest-sys.md
js-apis-inner-application-autoFillType-sys.md
js-apis-inner-application-autoStartupCallback-sys.md
js-apis-inner-application-autoStartupInfo-sys.md
js-apis-inner-application-baseContext.md
js-apis-inner-application-context-sys.md
js-apis-inner-application-context.md
js-apis-inner-application-continuableInfo-sys.md
js-apis-inner-application-continueCallback-sys.md
js-apis-inner-application-continueDeviceInfo-sys.md
js-apis-inner-application-continueMissionInfo-sys.md
js-apis-inner-application-customData-sys.md
js-apis-inner-application-errorObserver.md
js-apis-inner-application-eventHub.md
js-apis-inner-application-extensionContext.md
js-apis-inner-application-extensionRunningInfo-sys.md
js-apis-inner-application-loopObserver.md
js-apis-inner-application-missionCallbacks-sys.md
js-apis-inner-application-missionDeviceInfo-sys.md
js-apis-inner-application-missionInfo-sys.md
js-apis-inner-application-missionListener-sys.md
js-apis-inner-application-missionParameter-sys.md
js-apis-inner-application-missionSnapshot-sys.md
js-apis-inner-application-multiAppMode-sys.md
js-apis-inner-application-pageNodeInfo-sys.md
js-apis-inner-application-processData.md
js-apis-inner-application-processInformation.md
js-apis-inner-application-processRunningInfo.md
js-apis-inner-application-runningAppClone-sys.md
js-apis-inner-application-runningMultiAppInfo-sys.md
js-apis-inner-application-runningMultiInstanceInfo-sys.md
js-apis-inner-application-sendableContext.md
js-apis-inner-application-serviceExtensionContext-sys.md
js-apis-inner-application-uiAbilityContext-sys.md
js-apis-inner-application-uiAbilityContext.md
js-apis-inner-application-uiExtensionContext-sys.md
js-apis-inner-application-uiExtensionContext.md
js-apis-inner-application-uiServiceExtensionconnectcallback.md
js-apis-inner-application-uiserviceExtensionContext-sys.md
js-apis-inner-application-uiservicehostproxy-sys.md
js-apis-inner-application-uiserviceproxy.md
js-apis-inner-application-viewData-sys.md
js-apis-inner-wantAgent-triggerInfo-sys.md
js-apis-inner-wantAgent-triggerInfo.md
js-apis-inner-wantAgent-wantAgentInfo.md
js-apis-installer-sys.md
js-apis-launcherBundleManager-sys.md
js-apis-launcherBundleManager.md
js-apis-overlay-sys.md
js-apis-overlay.md
js-apis-permissionrequestresult.md
js-apis-privacyManager-sys.md
js-apis-screenLockFileManager-sys.md
js-apis-screenLockFileManager.md
js-apis-shortcutManager-sys.md
js-apis-system-package.md
js-apis-uripermissionmanager-sys.md
js-apis-wantAgent-sys.md
js-apis-wantAgent.md
native__child__process_8h.md
native__interface__bundle.md
start__options_8h.md
want__8h.md
apis-accessibility-kit
apis-ads-kit
apis-arkdata
apis-arkgraphics2d
apis-arkgraphics3d
apis-arkts
apis-arkui
apis-arkweb
apis-asset-store-kit
apis-audio-kit
apis-avcodec-kit
apis-avsession-kit
apis-backgroundtasks-kit
apis-basic-services-kit
apis-calendar-kit
apis-camera-kit
apis-connectivity-kit
apis-contacts-kit
apis-core-file-kit
apis-crypto-architecture-kit
apis-data-protection-kit
apis-device-certificate-kit
apis-distributedservice-kit
apis-driverdevelopment-kit
apis-drm-kit
apis-ffrt-kit
apis-form-kit
apis-image-kit
apis-ime-kit
apis-input-kit
apis-ipc-kit
apis-localization-kit
apis-location-kit
apis-mdm-kit
apis-media-kit
apis-media-library-kit
apis-mindspore-lite-kit
apis-multimodalawareness-kit
apis-network-kit
apis-neural-network-runtime-kit
apis-notification-kit
apis-performance-analysis-kit
apis-sensor-service-kit
apis-telephony-kit
apis-test-kit
apis-universal-keystore-kit
apis-user-authentication-kit
common
figures
native-lib
Readme-EN.md
development-intro.md
errorcode-universal.md
syscap-list.md
syscap.md
security
task-management
telephony
tools
ui
web
webgl
windowmanager
Readme-EN.md
application-dev-guide-for-gitee.md
application-dev-guide.md
website.md
contribute
design
device-dev
figures
readme
release-notes
third-party-components
Legal-Notices.md
OpenHarmony-Overview.md
glossary.md
readme.md
website.md
zh-cn
.gitattributes
.gitignore
CODEOWNERS
DCO.txt
LICENSE
OAT.xml
README.md
README_zh.md
image.png
Clone or Download
js-apis-app-appstartup-startupManager.md 11.20 KB
Copy Edit Raw Blame History

@ohos.app.appstartup.startupManager

The startupManager module provides APIs to manage startup tasks in AppStartup. It can be called only in the main thread.

NOTE

The initial APIs of this module are supported since API version 12. Newly added APIs will be marked with a superscript to indicate their earliest API version.

This module supports .so file preloading since API version 18.

The APIs of this module can be used only in the stage model.

Modules to Import

import { startupManager }  from '@kit.AbilityKit';

startupManager.run

run(startupTasks: Array<string>, config?: StartupConfig): Promise<void>

Runs startup tasks or loads .so files.

System capability: SystemCapability.Ability.AppStartup

Parameters

Name Type Mandatory Description
startupTasks Array<string> Yes Array of class names of the StartupTask API implemented by the startup task and names of .so files to be preloaded.
config StartupConfig No Configuration for the AppStartup timeout and startup task listener.

Return value

Type Description
Promise<void> Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Ability Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
16000050 Internal error.
28800001 Startup task or its dependency not found.
28800002 The startup tasks have circular dependencies.
28800003 An error occurred while running the startup tasks.
28800004 Running startup tasks timeout.

Example

import { AbilityConstant, UIAbility, Want, startupManager } from '@kit.AbilityKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    let startParams = ["StartupTask_001", "libentry_001"];
    try {
      // Manually call the run method.
      startupManager.run(startParams).then(() => {
        console.log('StartupTest startupManager run then, startParams = ');
      }).catch((error: BusinessError) => {
        console.info("StartupTest promise catch error, error = " + JSON.stringify(error));
        console.info("StartupTest promise catch error, startParams = "
          + JSON.stringify(startParams));
      })
    } catch (error) {
      let errMsg = JSON.stringify(error);
      let errCode: number = error.code;
      console.log('Startup catch error , errCode= ' + errCode);
      console.log('Startup catch error ,error= ' + errMsg);
    }
  }
  // ...
}

startupManager.removeAllStartupTaskResults

removeAllStartupTaskResults(): void

Removes all startup task results.

If there are preloading tasks for .so files, the corresponding .so files is set to the unloaded state. However, .so files that have already been loaded in the cache will not be removed.

System capability: SystemCapability.Ability.AppStartup

Example

import { AbilityConstant, UIAbility, Want, startupManager } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    startupManager.run(["StartupTask_001", "libentry_001"]).then(() => {
      console.info("StartupTask_001 init successful");
    })
  }

  onWindowStageCreate(windowStage: window.WindowStage) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    startupManager.removeAllStartupTaskResults(); // Remove all startup task results.

    windowStage.loadContent('pages/Index', (err, data) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
    });
  }
}

startupManager.getStartupTaskResult

getStartupTaskResult(startupTask: string): Object

Obtains the execution result of a startup task or .so file preloading task.

System capability: SystemCapability.Ability.AppStartup

Parameters

Name Type Mandatory Description
startupTask string Yes Class name of the StartupTask API implemented by the startup task or .so file name. All the startup tasks must implement the StartupTask API.

Return value

Type Description
Object Execution result of the startup task if a startup task name is passed.
undefined if a .so file name is passed.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { AbilityConstant, UIAbility, Want, startupManager } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    startupManager.run(["StartupTask_001"]).then(() => {
      console.info("StartupTask_001 init successful");
    })
  }

  onWindowStageCreate(windowStage: window.WindowStage) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    let result = startupManager.getStartupTaskResult("StartupTask_001"); // Manually obtain the startup task result.
    console.info("getStartupTaskResult result = " + result);
    windowStage.loadContent('pages/Index', (err, data) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
    });
  }
}

startupManager.isStartupTaskInitialized

isStartupTaskInitialized(startupTask: string): boolean

Checks whether a startup task or .so file preloading task is initialized.

System capability: SystemCapability.Ability.AppStartup

Parameters

Name Type Mandatory Description
startupTask string Yes Class name of the StartupTask API implemented by the startup task or .so file name.

Return value

Type Description
boolean Check result. The value true means that the task is initialized, and false means the opposite.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { AbilityConstant, UIAbility, Want, startupManager } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    startupManager.run(["StartupTask_001", "libentry_001"]).then(() => {
      console.info("StartupTask_001 init successful");
    })
  }

  onWindowStageCreate(windowStage: window.WindowStage) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    let result1 = startupManager.isStartupTaskInitialized('StartupTask_001');
    let result2 = startupManager.isStartupTaskInitialized('libentry_001');
    if (result1) {
      console.info("StartupTask_001 init successful");
    } else {
      console.info("StartupTask_001 uninitialized");
    }
    if (result2) {
      console.info("libentry_001 init successful");
    } else {
      console.info("libentry_001 uninitialized");
    }

    windowStage.loadContent('pages/Index', (err, data) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
    });
  }
}

startupManager.removeStartupTaskResult

removeStartupTaskResult(startupTask: string): void

Removes the initialization result of a startup task or .so file preloading task.

  • If a startup task name is passed, the initialization result of that startup task is removed.

  • If a .so file is passed, the .so file is set to the unloaded state, but the loaded .so file in the cache is not removed.

System capability: SystemCapability.Ability.AppStartup

Parameters

Name Type Mandatory Description
startupTask string Yes Class name of the StartupTask API implemented by the startup task or .so file name.

Error codes

For details about the error codes, see Universal Error Codes.

ID Error Message
401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.

Example

import { AbilityConstant, UIAbility, Want, startupManager } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
import { hilog } from '@kit.PerformanceAnalysisKit';

export default class EntryAbility extends UIAbility {
  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onCreate');
    startupManager.run(["StartupTask_001", "libentry_001"]).then(() => {
      console.info("StartupTask_001 init successful");
    })
  }

  onWindowStageCreate(windowStage: window.WindowStage) {
    hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
    startupManager.removeStartupTaskResult("StartupTask_001");
    startupManager.removeStartupTaskResult("libentry_001");

    windowStage.loadContent('pages/Index', (err, data) => {
      if (err.code) {
        hilog.error(0x0000, 'testTag', 'Failed to load the content. Cause: %{public}s', JSON.stringify(err) ?? '');
        return;
      }
      hilog.info(0x0000, 'testTag', 'Succeeded in loading the content. Data: %{public}s', JSON.stringify(data) ?? '');
    });
  }
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
other
1
https://gitee.com/openharmony/docs.git
git@gitee.com:openharmony/docs.git
openharmony
docs
docs
OpenHarmony-5.1.0-Release

Search