• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2024-2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16sequenceable continuous_task_callback_info..OHOS.BackgroundTaskMgr.ContinuousTaskCallbackInfo;
17sequenceable continuous_task_info..OHOS.BackgroundTaskMgr.ContinuousTaskInfo;
18sequenceable continuous_task_param..OHOS.BackgroundTaskMgr.ContinuousTaskParam;
19sequenceable continuous_task_param..OHOS.BackgroundTaskMgr.ContinuousTaskParamForInner;
20sequenceable delay_suspend_info..OHOS.BackgroundTaskMgr.DelaySuspendInfo;
21sequenceable efficiency_resource_info..OHOS.BackgroundTaskMgr.EfficiencyResourceInfo;
22sequenceable resource_callback_info..OHOS.BackgroundTaskMgr.ResourceCallbackInfo;
23sequenceable OHOS.IRemoteObject;
24sequenceable transient_task_app_info..OHOS.BackgroundTaskMgr.TransientTaskAppInfo;
25
26interface OHOS.BackgroundTaskMgr.IBackgroundTaskSubscriber;
27interface OHOS.BackgroundTaskMgr.IExpiredCallback;
28interface OHOS.BackgroundTaskMgr.IBackgroundTaskMgr {
29    void RequestSuspendDelay([in] String reason, [in] IExpiredCallback expiredCallback, [out] DelaySuspendInfo delayInfo);
30    void CancelSuspendDelay([in] int requestId);
31    void GetRemainingDelayTime([in] int requestId, [out] int delayTime);
32    void GetAllTransientTasks([out] int remainingQuota, [out] sharedptr<DelaySuspendInfo>[] list);
33    void StartBackgroundRunning([in] ContinuousTaskParam taskParam, [out] int notificationId, [out] int continuousTaskId);
34    void UpdateBackgroundRunning([in] ContinuousTaskParam taskParam, [out] int notificationId, [out] int continuousTaskId);
35    void StopBackgroundRunning([in] String abilityName, [in] IRemoteObject abilityToken, [in] int abilityId);
36    void GetAllContinuousTasks([out] ContinuousTaskInfo[] list);
37    void GetAllContinuousTasks([out] sharedptr<ContinuousTaskInfo>[] list, [in] boolean includeSuspended);
38    void SubscribeBackgroundTask([in] IBackgroundTaskSubscriber subscriber, [in] unsigned int flag);
39    void UnsubscribeBackgroundTask([in] IBackgroundTaskSubscriber subscriber);
40    void GetTransientTaskApps([out] TransientTaskAppInfo[] list);
41    void GetContinuousTaskApps([out] ContinuousTaskCallbackInfo[] list);
42    void ApplyEfficiencyResources([in] EfficiencyResourceInfo resourceInfo);
43    void ResetAllEfficiencyResources();
44    void GetAllEfficiencyResources([out] EfficiencyResourceInfo[] list);
45    void GetEfficiencyResourcesInfos([out] ResourceCallbackInfo[] appList, [out] ResourceCallbackInfo[] procList);
46    void StopContinuousTask([in] int uid, [in] int pid, [in] unsigned int taskType, [in] String key);
47    void SuspendContinuousTask([in] int uid, [in] int pid, [in] int reason, [in] String key);
48    void ActiveContinuousTask([in] int uid, [in] int pid, [in] String key);
49    void RequestBackgroundRunningForInner([in] ContinuousTaskParamForInner taskParam);
50    void RequestGetContinuousTasksByUidForInner([in] int uid, [out] ContinuousTaskInfo[] list);
51    void PauseTransientTaskTimeForInner([in] int uid);
52    void StartTransientTaskTimeForInner([in] int uid);
53    void AVSessionNotifyUpdateNotification([in] int uid, [in] int pid, [in] boolean isPublish);
54    void SetBgTaskConfig([in] String configData, [in] int sourceType);
55}
56