1 /* 2 * Copyright (c) 2021 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 16 #ifndef OHOS_ABILITY_RUNTIME_APP_MGR_CONSTANTS_H 17 #define OHOS_ABILITY_RUNTIME_APP_MGR_CONSTANTS_H 18 19 namespace OHOS { 20 namespace AppExecFwk { 21 namespace Constants { 22 constexpr const char* APP_MGR_SERVICE_NAME = "AppMgrService"; 23 } // namespace Constants 24 25 enum class ApplicationState { 26 APP_STATE_CREATE = 0, 27 APP_STATE_READY, 28 APP_STATE_FOREGROUND, 29 APP_STATE_FOCUS, 30 APP_STATE_BACKGROUND, 31 APP_STATE_TERMINATED, 32 APP_STATE_END, 33 APP_STATE_SET_COLD_START = 99, 34 APP_STATE_CACHED = 100, 35 }; 36 37 enum class WatchdogVisibilityState { 38 WATCHDOG_STATE_READY = 0, 39 WATCHDOG_STATE_VISIBILITY, 40 WATCHDOG_STATE_UNVISIBILITY, 41 }; 42 43 enum class ApplicationPendingState { 44 READY = 0, 45 FOREGROUNDING, 46 BACKGROUNDING, 47 }; 48 49 enum class ApplicationScheduleState { 50 SCHEDULE_READY = 0, 51 SCHEDULE_FOREGROUNDING, 52 SCHEDULE_BACKGROUNDING, 53 }; 54 55 enum class AbilityState { 56 ABILITY_STATE_CREATE = 0, 57 ABILITY_STATE_READY, 58 ABILITY_STATE_FOREGROUND, 59 ABILITY_STATE_FOCUS, 60 ABILITY_STATE_BACKGROUND, 61 ABILITY_STATE_TERMINATED, 62 ABILITY_STATE_END, 63 ABILITY_STATE_CONNECTED, 64 ABILITY_STATE_DISCONNECTED, 65 }; 66 67 enum class ExtensionState { 68 EXTENSION_STATE_CREATE = 0, 69 EXTENSION_STATE_READY, 70 EXTENSION_STATE_CONNECTED, 71 EXTENSION_STATE_DISCONNECTED, 72 EXTENSION_STATE_TERMINATED, 73 EXTENSION_STATE_FOREGROUND, 74 EXTENSION_STATE_BACKGROUND, 75 }; 76 77 enum AppMgrResultCode { 78 RESULT_OK = 0, 79 ERROR_SERVICE_NOT_READY, 80 ERROR_SERVICE_NOT_CONNECTED, 81 ERROR_KILL_APPLICATION 82 }; 83 84 enum class ProcessChangeReason { 85 REASON_NONE = 0, 86 REASON_REMOTE_DIED, 87 REASON_APP_TERMINATED, 88 REASON_APP_TERMINATED_TIMEOUT, 89 }; 90 91 enum class ProcessType { 92 NORMAL = 0, 93 EXTENSION, 94 RENDER, 95 GPU, 96 CHILD, 97 }; 98 99 enum class AppStartType { 100 COLD = 0, 101 HOT, 102 MULTI_INSTANCE, 103 PROCESS_CACHE_LAUNCH, 104 WARM 105 }; 106 107 enum class PreloadMode { 108 PRELOAD_NONE = -1, 109 PRESS_DOWN = 0, 110 PRE_MAKE = 1, 111 PRELOAD_MODULE = 2, 112 }; 113 114 enum class AppStartReason { 115 NONE = 0, 116 PRE_MAKE = 1, 117 PRELOAD_MODULE = 2, 118 SUGGEST_CACHE = 3, 119 }; 120 121 enum class PreloadState { 122 NONE = 0, 123 PRELOADING = 1, 124 PRELOADED = 2, 125 }; 126 127 enum class SupportProcessCacheState { 128 UNSPECIFIED = 0, 129 SUPPORT, 130 NOT_SUPPORT 131 }; 132 } // namespace AppExecFwk 133 } // namespace OHOS 134 #endif // OHOS_ABILITY_RUNTIME_APP_MGR_CONSTANTS_H 135