mirror of
https://gitee.com/openharmony/interface_sdk-js
synced 2025-04-16 12:12:18 +00:00
93 lines
4.8 KiB
TypeScript
93 lines
4.8 KiB
TypeScript
/*
|
|
* Copyright (c) 2023-2024 Huawei Device Co., Ltd.
|
|
* Licensed under the Apache License, Version 2.0 (the "License"),
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/**
|
|
* @file
|
|
* @kit BackgroundTasksKit
|
|
*/
|
|
|
|
import ExtensionContext from './ExtensionContext';
|
|
import type Want from '../@ohos.app.ability.Want';
|
|
|
|
/**
|
|
* The context of work scheduler extension. It allows access to
|
|
* WorkSchedulerExtensionContext-specific resources.
|
|
*
|
|
* @extends ExtensionContext
|
|
* @syscap SystemCapability.ResourceSchedule.WorkScheduler
|
|
* @StageModelOnly
|
|
* @since 10
|
|
*/
|
|
export default class WorkSchedulerExtensionContext extends ExtensionContext {
|
|
/**
|
|
* Starts a new service extension ability.
|
|
* If the target service extension ability is visible, you can start the target service extension ability;
|
|
* If the target service extension ability is invisible,
|
|
* you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible service extension ability.
|
|
* If the target service extension ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.
|
|
*
|
|
* @param { Want } want - Indicates the want info to start.
|
|
* @returns { Promise<void> } The promise returned by the function.
|
|
* @throws { BusinessError } 201 - The application does not have permission to call the interface.
|
|
* @throws { BusinessError } 202 - The application is not system-app, can not use system-api.
|
|
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
|
|
* 2. Incorrect parameter types; 3. Parameter verification failed.
|
|
* @throws { BusinessError } 16000001 - The specified ability does not exist.
|
|
* @throws { BusinessError } 16000002 - Incorrect ability type.
|
|
* @throws { BusinessError } 16000004 - Can not start invisible component.
|
|
* @throws { BusinessError } 16000005 - The specified process does not have the permission.
|
|
* @throws { BusinessError } 16000006 - Cross-user operations are not allowed.
|
|
* @throws { BusinessError } 16000008 - The crowdtesting application expires.
|
|
* @throws { BusinessError } 16000011 - The context does not exist.
|
|
* @throws { BusinessError } 16000012 - The application is controlled.
|
|
* @throws { BusinessError } 16000013 - The application is controlled by EDM.
|
|
* @throws { BusinessError } 16000050 - Internal error.
|
|
* @throws { BusinessError } 16200001 - The caller has been released.
|
|
* @syscap SystemCapability.ResourceSchedule.WorkScheduler
|
|
* @systemapi
|
|
* @stagemodelonly
|
|
* @since 13
|
|
*/
|
|
startServiceExtensionAbility(want: Want): Promise<void>;
|
|
|
|
/**
|
|
* Stops other service extension ability.
|
|
* If the target service extension ability is visible, you can stop the target service extension ability;
|
|
* If the target service extension ability is invisible,
|
|
* you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to stop target invisible service extension ability.
|
|
* If the target service extension ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.
|
|
*
|
|
* @param { Want } want - Indicates the want info to stop.
|
|
* @returns { Promise<void> } The promise returned by the function.
|
|
* @throws { BusinessError } 201 - The application does not have permission to call the interface.
|
|
* @throws { BusinessError } 202 - The application is not system-app, can not use system-api.
|
|
* @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;
|
|
* 2. Incorrect parameter types; 3. Parameter verification failed.
|
|
* @throws { BusinessError } 16000001 - The specified ability does not exist.
|
|
* @throws { BusinessError } 16000002 - Incorrect ability type.
|
|
* @throws { BusinessError } 16000004 - Can not start invisible component.
|
|
* @throws { BusinessError } 16000005 - The specified process does not have the permission.
|
|
* @throws { BusinessError } 16000006 - Cross-user operations are not allowed.
|
|
* @throws { BusinessError } 16000011 - The context does not exist.
|
|
* @throws { BusinessError } 16000050 - Internal error.
|
|
* @throws { BusinessError } 16200001 - The caller has been released.
|
|
* @syscap SystemCapability.ResourceSchedule.WorkScheduler
|
|
* @systemapi
|
|
* @stagemodelonly
|
|
* @since 13
|
|
*/
|
|
stopServiceExtensionAbility(want: Want): Promise<void>;
|
|
}
|