• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-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 
16 #ifndef FOUNDATION_APPEXECFWK_SERVICES_BUNDLEMGR_INCLUDE_COMMON_PROFILE_H
17 #define FOUNDATION_APPEXECFWK_SERVICES_BUNDLEMGR_INCLUDE_COMMON_PROFILE_H
18 
19 #include <string>
20 
21 #include "nlohmann/json_fwd.hpp"
22 
23 namespace OHOS {
24 namespace AppExecFwk {
25 namespace ProfileReader {
26 // common tag
27 constexpr const char* PROFILE_KEY_NAME = "name";
28 constexpr const char* PROFILE_KEY_ORIGINAL_NAME = "originalName";
29 constexpr const char* PROFILE_KEY_LABEL = "label";
30 constexpr const char* PROFILE_KEY_ICON_ID = "iconId";
31 constexpr const char* PROFILE_KEY_LABEL_ID = "labelId";
32 constexpr const char* PROFILE_KEY_DESCRIPTION = "description";
33 constexpr const char* PROFILE_KEY_DESCRIPTION_ID = "descriptionId";
34 constexpr const char* PROFILE_KEY_TYPE = "type";
35 constexpr const char* PROFILE_KEY_SRCPATH = "srcPath";
36 constexpr const char* PROFILE_KEY_SRCLANGUAGE = "srcLanguage";
37 constexpr const char* PRIORITY = "priority";
38 
39 // bundle profile tag
40 constexpr const char* BUNDLE_PROFILE_KEY_APP = "app";
41 constexpr const char* BUNDLE_PROFILE_KEY_DEVICE_CONFIG = "deviceConfig";
42 constexpr const char* BUNDLE_PROFILE_KEY_MODULE = "module";
43 // sub  BUNDLE_PROFILE_KEY_APP
44 constexpr const char* BUNDLE_APP_PROFILE_KEY_BUNDLE_NAME = "bundleName";
45 constexpr const char* BUNDLE_APP_PROFILE_KEY_VENDOR = "vendor";
46 constexpr const char* BUNDLE_APP_PROFILE_KEY_VERSION = "version";
47 constexpr const char* BUNDLE_APP_PROFILE_KEY_API_VERSION = "apiVersion";
48 constexpr const char* BUNDLE_APP_PROFILE_KEY_SINGLETON = "singleton";
49 constexpr const char* BUNDLE_APP_PROFILE_KEY_REMOVABLE = "removable";
50 constexpr const char* BUNDLE_APP_PROFILE_KEY_USER_DATA_CLEARABLE = "userDataClearable";
51 constexpr const char* BUNDLE_APP_PROFILE_KEY_TARGETET_BUNDLE_LIST = "targetBundleList";
52 constexpr const char* BUNDLE_APP_PROFILE_KEY_ASAN_ENABLED = "asanEnabled";
53 constexpr const char* BUNDLE_APP_PROFILE_KEY_GWP_ASAN_ENABLED = "GWPAsanEnabled";
54 constexpr const char* BUNDLE_APP_PROFILE_KEY_TSAN_ENABLED = "tsanEnabled";
55 constexpr const char* BUNDLE_APP_PROFILE_KEY_HWASAN_ENABLED = "hwasanEnabled";
56 constexpr const char* BUNDLE_APP_PROFILE_KEY_UBSAN_ENABLED = "ubsanEnabled";
57 
58 // sub BUNDLE_APP_PROFILE_KEY_VERSION
59 constexpr const char* BUNDLE_APP_PROFILE_KEY_CODE = "code";
60 constexpr const char* BUNDLE_APP_PROFILE_KEY_MIN_COMPATIBLE_VERSION_CODE = "minCompatibleVersionCode";
61 // sub BUNDLE_APP_PROFILE_KEY_API_VERSION
62 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPATIBLE = "compatible";
63 constexpr const char* BUNDLE_APP_PROFILE_KEY_TARGET = "target";
64 constexpr const char* BUNDLE_APP_PROFILE_KEY_RELEASE_TYPE = "releaseType";
65 constexpr const char* APP_RELEASE_TYPE_VALUE_RELEASE = "Release";
66 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPILE_SDK_VERSION = "compileSdkVersion";
67 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPILE_SDK_TYPE = "compileSdkType";
68 // sub  BUNDLE_PROFILE_KEY_DEVICE_CONFIG
69 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEFAULT = "default";
70 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_PHONE = "phone";
71 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TABLET = "tablet";
72 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TV = "tv";
73 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_CAR = "car";
74 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_WEARABLE = "wearable";
75 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_LITE_WEARABLE = "liteWearable";
76 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SMART_VISION = "smartVision";
77 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TWO_IN_ONE = "2in1";
78 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEFAULT
79 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_JOINT_USER_ID = "jointUserId";
80 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_PROCESS = "process";
81 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_KEEP_ALIVE = "keepAlive";
82 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_ARK = "ark";
83 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DIRECT_LAUNCH = "directLaunch";
84 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SUPPORT_BACKUP = "supportBackup";
85 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEBUG = "debug";
86 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_COMPRESS_NATIVE_LIBS = "compressNativeLibs";
87 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_NETWORK = "network";
88 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_REQ_VERSION = "reqVersion";
89 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_FLAG = "flag";
90 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_COMPATIBLE = "compatible";
91 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TARGET = "target";
92 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_NETWORK
93 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_USES_CLEAR_TEXT = "usesCleartext";
94 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SECURITY_CONFIG = "securityConfig";
95 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SECURITY_CONFIG
96 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAIN_SETTINGS = "domainSettings";
97 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAIN_SETTINGS
98 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_CLEAR_TEXT_PERMITTED = "cleartextPermitted";
99 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAINS = "domains";
100 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAINS
101 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SUB_DOMAINS = "subDomains";
102 // sub BUNDLE_PROFILE_KEY_MODULE
103 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PACKAGE = "package";
104 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORTED_MODES = "supportedModes";
105 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_CAPABILITIES = "reqCapabilities";
106 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORTED_REQ_CAPABILITIES = "reqCapabilities";
107 constexpr const char* BUNDLE_MODULE_DEPENDENCIES = "dependencies";
108 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_IS_LIB_ISOLATED = "libIsolation";
109 constexpr const char* MODULE_SUPPORTED_MODES_VALUE_DRIVE = "drive";
110 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEVICE_TYPE = "deviceType";
111 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_COLOR_MODE = "colorMode";
112 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DISTRO = "distro";
113 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_META_DATA = "metaData";
114 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ABILITIES = "abilities";
115 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_JS = "js";
116 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_COMMON_EVENTS = "commonEvents";
117 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUTS = "shortcuts";
118 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEFINE_PERMISSIONS = "definePermissions";
119 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS = "reqPermissions";
120 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQUEST_PERMISSIONS = "requestPermissions";
121 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_NAME = "name";
122 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_REASON = "reason";
123 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_USEDSCENE = "usedScene";
124 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_ABILITY = "ability";
125 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN = "when";
126 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN_INUSE = "inuse";
127 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN_ALWAYS = "always";
128 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CUSTOMIZE_DATA = "customizeData";
129 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MAIN_ABILITY = "mainAbility";
130 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SRC_PATH = "srcPath";
131 constexpr const char* BUNDLE_MODULE_PROFILE_BUILD_HASH = "buildHash";
132 // sub BUNDLE_MODULE_PROFILE_KEY_DISTRO
133 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DELIVERY_WITH_INSTALL = "deliveryWithInstall";
134 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_NAME = "moduleName";
135 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_TYPE = "moduleType";
136 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_INSTALLATION_FREE = "installationFree";
137 // sub BUNDLE_MODULE_PROFILE_KEY_SKILLS
138 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ACTIONS = "actions";
139 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ENTITIES = "entities";
140 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URIS = "uris";
141 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DOMAIN_VERIFY = "domainVerify";
142 // sub BUNDLE_MODULE_PROFILE_KEY_URIS
143 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SCHEME = "scheme";
144 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_HOST = "host";
145 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PORT = "port";
146 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATH = "path";
147 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHSTARTWITH = "pathStartWith";
148 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHREGX = "pathRegx";
149 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHREGEX = "pathRegex";
150 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TYPE = "type";
151 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_UTD = "utd";
152 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MAX_FILE_SUPPORTED = "maxFileSupported";
153 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_LINK_FEATURE = "linkFeature";
154 // sub BUNDLE_MODULE_PROFILE_KEY_META_DATA
155 constexpr const char* BUNDLE_MODULE_META_KEY_CUSTOMIZE_DATA = "customizeData";
156 constexpr const char* BUNDLE_MODULE_META_KEY_NAME = "name";
157 constexpr const char* BUNDLE_MODULE_META_KEY_VALUE = "value";
158 constexpr const char* BUNDLE_MODULE_META_KEY_EXTRA = "extra";
159 // sub BUNDLE_MODULE_PROFILE_KEY_DISTRO_TYPE
160 constexpr const char* MODULE_DISTRO_MODULE_TYPE_VALUE_ENTRY = "entry";
161 constexpr const char* MODULE_DISTRO_MODULE_TYPE_VALUE_FEATURE = "feature";
162 // sub BUNDLE_MODULE_PROFILE_KEY_ABILITIES
163 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ICON = "icon";
164 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ICON_ID = "iconId";
165 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URI = "uri";
166 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_LAUNCH_TYPE = "launchType";
167 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_LAUNCH_THEME = "theme";
168 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_VISIBLE = "visible";
169 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CONTINUABLE = "continuable";
170 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PERMISSIONS = "permissions";
171 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SKILLS = "skills";
172 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PROCESS = "process";
173 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEVICE_CAP_ABILITY = "deviceCapability";
174 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORM_ENABLED = "formEnabled";
175 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORM = "form";
176 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ORIENTATION = "orientation";
177 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_BACKGROUND_MODES = "backgroundModes";
178 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_GRANT_PERMISSION = "grantPermission";
179 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URI_PERMISSION = "uriPermission";
180 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_READ_PERMISSION = "readPermission";
181 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_WRITE_PERMISSION = "writePermission";
182 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DIRECT_LAUNCH = "directLaunch";
183 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CONFIG_CHANGES = "configChanges";
184 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MISSION = "mission";
185 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_ABILITY = "targetAbility";
186 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MULTIUSER_SHARED = "multiUserShared";
187 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORT_PIP_MODE = "supportPipMode";
188 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORMS_ENABLED = "formsEnabled";
189 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORMS = "forms";
190 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_ICON = "startWindowIcon";
191 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_ICON_ID = "startWindowIconId";
192 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_BACKGROUND = "startWindowBackground";
193 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_BACKGROUND_ID = "startWindowBackgroundId";
194 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REMOVE_MISSION_AFTER_TERMINATE = "removeMissionAfterTerminate";
195 // sub BUNDLE_MODULE_PROFILE_KEY_FORM
196 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODE = "mode";
197 // sub BUNDLE_MODULE_PROFILE_KEY_FORM
198 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_ENTITY = "formEntity";
199 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_MIN_HEIGHT = "minHeight";
200 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_DEFAULT_HEIGHT = "defaultHeight";
201 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_MIN_WIDTH = "minWidth";
202 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_DEFAULT_WIDTH = "defaultWidth";
203 // sub BUNDLE_MODULE_PROFILE_KEY_FORMS
204 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_IS_DEFAULT = "isDefault";
205 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_COLOR_MODE = "colorMode";
206 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SUPPORT_DIMENSIONS = "supportDimensions";
207 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_DEFAULT_DIMENSION = "defaultDimension";
208 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_LANDSCAPE_LAYOUTS = "landscapeLayouts";
209 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_PORTRAIT_LAYOUTS = "portraitLayouts";
210 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_UPDATEENABLED = "updateEnabled";
211 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SCHEDULED_UPDATE_TIME = "scheduledUpdateTime";
212 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_UPDATE_DURATION = "updateDuration";
213 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_DEEP_LINK = "deepLink";
214 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_JS_COMPONENT_NAME = "jsComponentName";
215 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_VALUE = "value";
216 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_FORM_CONFIG_ABILITY = "formConfigAbility";
217 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_FORM_VISIBLE_NOTIFY = "formVisibleNotify";
218 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SRC = "src";
219 // sub BUNDLE_MODULE_PROFILE_KEY_JS
220 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PAGES = "pages";
221 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_WINDOW = "window";
222 // sub BUNDLE_MODULE_PROFILE_KEY_COMMON_EVENTS
223 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PERMISSION = "permission";
224 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DATA = "data";
225 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_EVENTS = "events";
226 constexpr const char* MODULE_ABILITY_JS_TYPE_VALUE_NORMAL = "normal";
227 constexpr const char* MODULE_ABILITY_JS_TYPE_VALUE_FORM = "form";
228 // sub BUNDLE_MODULE_PROFILE_KEY_WINDOW
229 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DESIGN_WIDTH = "designWidth";
230 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_AUTO_DESIGN_WIDTH = "autoDesignWidth";
231 // sub BUNDLE_MODULE_PROFILE_KEY_SHORTCUTS
232 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_ID = "shortcutId";
233 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_WANTS = "intents";
234 // sub BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_WANTS
235 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_CLASS = "targetClass";
236 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_BUNDLE = "targetBundle";
237 // sub BUNDLE_INSTALL_MARK
238 constexpr const char* BUNDLE_INSTALL_MARK_BUNDLE = "installMarkBundle";
239 constexpr const char* BUNDLE_INSTALL_MARK_PACKAGE = "installMarkPackage";
240 constexpr const char* BUNDLE_INSTALL_MARK_STATUS = "installMarkStatus";
241 // sub BUNDLE_SANDBOX_PERSISTENT_INFO
242 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_ACCESS_TOKEN_ID = "accessTokenId";
243 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_APP_INDEX = "appIndex";
244 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_USER_ID = "userId";
245 // sub BUNDLE_MULTI_APP
246 
247 const uint32_t VALUE_HOME_SCREEN = 1 << 0;
248 // 000010 represents supporting search box
249 const uint32_t VALUE_SEARCHBOX = 1 << 1;
250 
251 constexpr const char* KEY_HOME_SCREEN = "homeScreen";
252 constexpr const char* KEY_SEARCHBOX = "searchbox";
253 
254 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_JS_TYPE_ETS = "ets";
255 
256 // background modes
257 // different bits in the binary represent different services
258 // 0000001 represents data transmission services
259 constexpr uint32_t VALUE_DATA_TRANSFER = 1 << 0;
260 
261 // 0000 0010 represents audio output service
262 constexpr uint32_t VALUE_AUDIO_PLAYBACK = 1 << 1;
263 
264 // 0000 0100 represents audio input service
265 constexpr uint32_t VALUE_AUDIO_RECORDING = 1 << 2;
266 
267 // 0000 1000 represents positioning navigation service
268 constexpr uint32_t VALUE_LOCATION = 1 << 3;
269 
270 // 0001 0000 represents bluetooth scanning, connection, transmission service (wearing)
271 constexpr uint32_t VALUE_BLUETOOTH_INTERACTION = 1 << 4;
272 
273 // 0010 0000 represents multi device connection services
274 constexpr uint32_t VALUE_MULTI_DEVICE_CONNECTION = 1 << 5;
275 
276 // 0100 0000 represents WiFi scanning, connection, transmission services (multi-screen)
277 constexpr uint32_t VALUE_WIFI_INTERACTION = 1 << 6;
278 
279 // 1000 0000 represents audio call,VOIP service
280 constexpr uint32_t VALUE_VOIP = 1 << 7;
281 
282 // 1 0000 0000 represents task Keeping service
283 constexpr uint32_t VALUE_TASK_KEEPING = 1 << 8;
284 
285 // 10 0000 0000 represents picture in picture service
286 constexpr uint32_t VALUE_PICTURE_IN_PICTURE = 1 << 9;
287 
288 // 100 0000 0000 represents screen fetch service
289 constexpr uint32_t VALUE_SCREEN_FETCH = 1 << 10;
290 
291 constexpr const char* KEY_DATA_TRANSFER = "dataTransfer";
292 constexpr const char* KEY_AUDIO_PLAYBACK = "audioPlayback";
293 constexpr const char* KEY_AUDIO_RECORDING = "audioRecording";
294 constexpr const char* KEY_LOCATION = "location";
295 constexpr const char* KEY_BLUETOOTH_INTERACTION = "bluetoothInteraction";
296 constexpr const char* KEY_MULTI_DEVICE_CONNECTION = "multiDeviceConnection";
297 constexpr const char* KEY_WIFI_INTERACTION = "wifiInteraction";
298 constexpr const char* KEY_VOIP = "voip";
299 constexpr const char* KEY_TASK_KEEPING = "taskKeeping";
300 constexpr const char* KEY_PICTURE_IN_PICTURE = "pictureInPicture";
301 constexpr const char* KEY_SCREEN_FETCH = "screenFetch";
302 }  // namespace ProfileReader
303 
304 namespace Profile {
305 // common
306 constexpr const char* ICON = "icon";
307 constexpr const char* ICON_ID = "iconId";
308 constexpr const char* LABEL = "label";
309 constexpr const char* LABEL_ID = "labelId";
310 constexpr const char* DESCRIPTION = "description";
311 constexpr const char* DESCRIPTION_ID = "descriptionId";
312 constexpr const char* META_DATA = "metadata";
313 constexpr const char* SKILLS = "skills";
314 constexpr const char* SRC_ENTRANCE = "srcEntrance";
315 constexpr const char* SRC_ENTRY = "srcEntry";
316 constexpr const char* PERMISSIONS = "permissions";
317 constexpr const char* APPIDENTIFIER_ALLOW_LIST = "appIdentifierAllowList";
318 constexpr const char* VISIBLE = "visible";
319 constexpr const char* EXPORTED = "exported";
320 constexpr const char* SRC_LANGUAGE = "srcLanguage";
321 constexpr const char* PRIORITY = "priority";
322 constexpr const char* ATOMIC_SERVICE = "atomicService";
323 // module.json
324 constexpr const char* APP = "app";
325 constexpr const char* MODULE = "module";
326 // app
327 constexpr const char* APP_BUNDLE_NAME = "bundleName";
328 constexpr const char* APP_DEBUG = "debug";
329 constexpr const char* APP_VENDOR = "vendor";
330 constexpr const char* APP_VERSION_CODE = "versionCode";
331 constexpr const char* APP_VERSION_NAME = "versionName";
332 constexpr const char* APP_MIN_COMPATIBLE_VERSION_CODE = "minCompatibleVersionCode";
333 constexpr const char* APP_MIN_API_VERSION = "minAPIVersion";
334 constexpr const char* APP_TARGET_API_VERSION = "targetAPIVersion";
335 constexpr const char* APP_TARGET_MINOR_API_VERSION = "targetMinorApiVersion";
336 constexpr const char* APP_TARGET_PATCH_API_VERSION = "targetPatchApiVersion";
337 constexpr const char* APP_API_RELEASETYPE = "apiReleaseType";
338 constexpr const char* APP_API_RELEASETYPE_DEFAULT_VALUE = "Release";
339 constexpr const char* APP_ENTITY_TYPE_DEFAULT_VALUE = "unspecified";
340 constexpr const char* APP_KEEP_ALIVE = "keepAlive";
341 constexpr const char* APP_REMOVABLE = "removable";
342 constexpr const char* APP_SINGLETON = "singleton";
343 constexpr const char* APP_USER_DATA_CLEARABLE = "userDataClearable";
344 constexpr const char* APP_PHONE = "phone";
345 constexpr const char* APP_TABLET = "tablet";
346 constexpr const char* APP_TV = "tv";
347 constexpr const char* APP_WEARABLE = "wearable";
348 constexpr const char* APP_LITE_WEARABLE = "liteWearable";
349 constexpr const char* APP_CAR = "car";
350 constexpr const char* APP_SMART_VISION = "smartVision";
351 constexpr const char* APP_ROUTER = "router";
352 constexpr const char* APP_TWO_IN_ONE = "2in1";
353 constexpr const char* APP_ACCESSIBLE = "accessible";
354 constexpr const char* APP_TARGETBUNDLELIST = "targetBundleList";
355 constexpr const char* APP_MULTI_PROJECTS = "multiProjects";
356 constexpr const char* APP_ASAN_ENABLED = "asanEnabled";
357 constexpr const char* BUNDLE_TYPE = "bundleType";
358 constexpr const char* APP_GWP_ASAN_ENABLED = "GWPAsanEnabled";
359 constexpr const char* APP_TSAN_ENABLED = "tsanEnabled";
360 constexpr const char* APP_UBSAN_ENABLED = "ubsanEnabled";
361 constexpr const char* APP_CONFIGURATION = "configuration";
362 constexpr const char* APP_ASSET_ACCESS_GROUPS = "assetAccessGroups";
363 constexpr const char* APP_PRELOAD_PHASE = "appPreloadPhase";
364 // multiappmode
365 constexpr const char* APP_MULTI_APP_MODE = "multiAppMode";
366 constexpr const char* APP_HWASAN_ENABLED = "hwasanEnabled";
367 constexpr const char* APP_CLOUD_FILE_SYNC_ENABLED = "cloudFileSyncEnabled";
368 constexpr const char* APP_CLOUD_STRUCTURED_DATA_SYNC_ENABLED = "cloudStructuredDataSyncEnabled";
369 constexpr const char* MULTI_APP_MODE_TYPE = "multiAppModeType";
370 constexpr const char* MULTI_APP_MODE_MAX_ADDITIONAL_NUMBER = "maxCount";
371 constexpr const char* APP_MAX_CHILD_PROCESS = "maxChildProcess";
372 constexpr const char* MAX_CHILD_PROCESS = "const.bms.maxChildProcess";
373 // module
374 constexpr const char* MODULE_NAME = "name";
375 constexpr const char* MODULE_TYPE = "type";
376 constexpr const char* MODULE_PROCESS = "process";
377 constexpr const char* MODULE_MAIN_ELEMENT = "mainElement";
378 constexpr const char* MODULE_DEVICE_TYPES = "deviceTypes";
379 constexpr const char* MODULE_REQUIRED_DEVICE_FEATURES = "requiredDeviceFeatures";
380 constexpr const char* MODULE_CROS_APP_SHARED_CONFIG = "crossAppSharedConfig";
381 constexpr const char* MODULE_ABILITY_SRC_ENTRY_DELEGATOR = "abilitySrcEntryDelegator";
382 constexpr const char* MODULE_ABILITY_STAGE_SRC_ENTRY_DELEGATOR = "abilityStageSrcEntryDelegator";
383 constexpr const char* MODULE_HNP_PACKAGE = "hnpPackages";
384 constexpr const char* MODULE_DELIVERY_WITH_INSTALL = "deliveryWithInstall";
385 constexpr const char* MODULE_INSTALLATION_FREE = "installationFree";
386 constexpr const char* MODULE_VIRTUAL_MACHINE = "virtualMachine";
387 constexpr const char* MODULE_VIRTUAL_MACHINE_DEFAULT_VALUE = "default";
388 constexpr const char* MODULE_UI_SYNTAX = "uiSyntax";
389 constexpr const char* MODULE_UI_SYNTAX_DEFAULT_VALUE = "hml";
390 constexpr const char* MODULE_PAGES = "pages";
391 constexpr const char* MODULE_APP_SYSTEM_THEME = "systemTheme";
392 constexpr const char* MODULE_ABILITIES = "abilities";
393 constexpr const char* MODULE_EXTENSION_ABILITIES = "extensionAbilities";
394 constexpr const char* MODULE_REQUEST_PERMISSIONS = "requestPermissions";
395 constexpr const char* MODULE_DEFINE_PERMISSIONS = "definePermissions";
396 constexpr const char* MODULE_DEPENDENCIES = "dependencies";
397 constexpr const char* MODULE_COMPILE_MODE = "compileMode";
398 constexpr const char* MODULE_IS_LIB_ISOLATED = "libIsolation";
399 constexpr const char* MODULE_PROXY_DATAS = "proxyDatas";
400 constexpr const char* MODULE_PROXY_DATA = "proxyData";
401 constexpr const char* MODULE_BUILD_HASH = "buildHash";
402 constexpr const char* MODULE_ISOLATION_MODE = "isolationMode";
403 constexpr const char* MODULE_COMPRESS_NATIVE_LIBS = "compressNativeLibs";
404 constexpr const char* MODULE_EXTRACT_NATIVE_LIBS = "extractNativeLibs";
405 constexpr const char* MODULE_QUERY_SCHEMES = "querySchemes";
406 constexpr const char* MODULE_APP_STARTUP = "appStartup";
407 constexpr const char* MODULE_FORM_EXTENSION_MODULE = "formExtensionModule";
408 constexpr const char* MODULE_FORM_WIDGET_MODULE = "formWidgetModule";
409 constexpr const char* MODULE_HAS_INTENT = "hasInsightIntent";
410 constexpr const char* MODULE_DEDUPLICATE_HAR = "deduplicateHar";
411 // module type
412 constexpr const char* MODULE_TYPE_ENTRY = "entry";
413 constexpr const char* MODULE_TYPE_FEATURE = "feature";
414 constexpr const char* MODULE_TYPE_SHARED = "shared";
415 // deviceConfig
416 constexpr const char* MIN_API_VERSION = "minAPIVersion";
417 constexpr const char* DEVICE_CONFIG_KEEP_ALIVE = "keepAlive";
418 constexpr const char* DEVICE_CONFIG_REMOVABLE = "removable";
419 constexpr const char* DEVICE_CONFIG_SINGLETON = "singleton";
420 constexpr const char* DEVICE_CONFIG_USER_DATA_CLEARABLE = "userDataClearable";
421 constexpr const char* DEVICE_CONFIG_ACCESSIBLE = "accessible";
422 // metadata
423 constexpr const char* META_DATA_NAME = "name";
424 constexpr const char* META_DATA_VALUE = "value";
425 constexpr const char* META_DATA_VALUEID = "valueId";
426 constexpr const char* META_DATA_RESOURCE = "resource";
427 // hnppackge
428 constexpr const char* HNP_PACKAGE = "package";
429 constexpr const char* HNP_TYPE = "type";
430 // metadata reserved
431 constexpr const char* META_DATA_FORM = "ohos.extension.form";
432 constexpr const char* META_DATA_SHORTCUTS = "ohos.ability.shortcuts";
433 constexpr const char* META_DATA_COMMON_EVENTS = "ohos.extension.staticSubscriber";
434 // ability
435 constexpr const char* ABILITY_NAME = "name";
436 constexpr const char* ABILITY_LAUNCH_TYPE = "launchType";
437 constexpr const char* ABILITY_LAUNCH_TYPE_DEFAULT_VALUE = "singleton";
438 constexpr const char* ABILITY_BACKGROUNDMODES = "backgroundModes";
439 constexpr const char* ABILITY_CONTINUABLE = "continuable";
440 constexpr const char* ABILITY_START_WINDOW = "startWindow";
441 constexpr const char* ABILITY_START_WINDOW_ID = "startWindowId";
442 constexpr const char* ABILITY_START_WINDOW_ICON = "startWindowIcon";
443 constexpr const char* ABILITY_START_WINDOW_ICON_ID = "startWindowIconId";
444 constexpr const char* ABILITY_START_WINDOW_BACKGROUND = "startWindowBackground";
445 constexpr const char* ABILITY_START_WINDOW_BACKGROUND_ID = "startWindowBackgroundId";
446 constexpr const char* ABILITY_REMOVE_MISSION_AFTER_TERMINATE = "removeMissionAfterTerminate";
447 constexpr const char* ABILITY_ORIENTATION = "orientation";
448 constexpr const char* ABILITY_SUPPORT_WINDOW_MODE = "supportWindowMode";
449 constexpr const char* ABILITY_MAX_WINDOW_RATIO = "maxWindowRatio";
450 constexpr const char* ABILITY_MIN_WINDOW_RATIO = "minWindowRatio";
451 constexpr const char* ABILITY_MAX_WINDOW_WIDTH = "maxWindowWidth";
452 constexpr const char* ABILITY_MIN_WINDOW_WIDTH = "minWindowWidth";
453 constexpr const char* ABILITY_MAX_WINDOW_HEIGHT = "maxWindowHeight";
454 constexpr const char* ABILITY_MIN_WINDOW_HEIGHT = "minWindowHeight";
455 constexpr const char* ABILITY_EXCLUDE_FROM_MISSIONS = "excludeFromMissions";
456 constexpr const char* ABILITY_UNCLEARABLE_MISSION = "unclearableMission";
457 constexpr const char* ABILITY_EXCLUDEFROMDOCK_MISSION = "excludeFromDock";
458 constexpr const char* ABILITY_PREFER_MULTI_WINDOW_ORIENTATION_MISSION = "preferMultiWindowOrientation";
459 constexpr const char* ABILITY_RECOVERABLE = "recoverable";
460 constexpr const char* ABILITY_ISOLATION_PROCESS = "isolationProcess";
461 constexpr const char* ABILITY_CONTINUE_TYPE = "continueType";
462 constexpr const char* ABILITY_ORIENTATION_ID = "orientationId";
463 constexpr const char* ABILITY_CONTINUE_BUNDLE_NAME = "continueBundleName";
464 // extension ability
465 constexpr const char* EXTENSION_ABILITY_NAME = "name";
466 constexpr const char* EXTENSION_ABILITY_TYPE = "type";
467 constexpr const char* EXTENSION_URI = "uri";
468 constexpr const char* EXTENSION_ABILITY_READ_PERMISSION = "readPermission";
469 constexpr const char* EXTENSION_ABILITY_WRITE_PERMISSION = "writePermission";
470 constexpr const char* EXTENSION_PROCESS_MODE = "extensionProcessMode";
471 constexpr const char* DATA_GROUP_IDS = "dataGroupIds";
472 // requestPermission
473 constexpr const char* REQUESTPERMISSION_NAME = "name";
474 constexpr const char* REQUESTPERMISSION_REASON = "reason";
475 constexpr const char* REQUESTPERMISSION_REASON_ID = "reasonId";
476 constexpr const char* REQUESTPERMISSION_USEDSCENE = "usedScene";
477 constexpr const char* REQUESTPERMISSION_ABILITIES = "abilities";
478 constexpr const char* REQUESTPERMISSION_WHEN = "when";
479 // definePermission
480 constexpr const char* DEFINEPERMISSION_NAME = "name";
481 constexpr const char* DEFINEPERMISSION_GRANT_MODE = "grantMode";
482 constexpr const char* DEFINEPERMISSION_AVAILABLE_LEVEL = "availableLevel";
483 constexpr const char* DEFINEPERMISSION_PROVISION_ENABLE = "provisionEnable";
484 constexpr const char* DEFINEPERMISSION_DISTRIBUTED_SCENE_ENABLE = "distributedSceneEnable";
485 constexpr const char* DEFINEPERMISSION_IS_KERNEL_EFFECT = "isKernelEffect";
486 constexpr const char* DEFINEPERMISSION_HAS_VALUE = "hasValue";
487 constexpr const char* DEFINEPERMISSION_GRANT_MODE_SYSTEM_GRANT = "system_grant";
488 constexpr const char* DEFINEPERMISSION_AVAILABLE_LEVEL_DEFAULT_VALUE = "normal";
489 constexpr const char* DEFINEPERMISSION_AVAILABLE_TYPE = "availableType";
490 constexpr const char* DEFINEPERMISSION_AVAILABLE_TYPE_DEFAULT_VALUE = "normal";
491 constexpr const char* DEFINEPERMISSION_AVAILABLE_TYPE_MDM = "MDM";
492 // apl
493 constexpr const char* AVAILABLELEVEL_NORMAL = "normal";
494 constexpr const char* AVAILABLELEVEL_SYSTEM_BASIC = "system_basic";
495 constexpr const char* AVAILABLELEVEL_SYSTEM_CORE = "system_core";
496 // compile mode
497 constexpr const char* COMPILE_MODE_JS_BUNDLE = "jsbundle";
498 constexpr const char* COMPILE_MODE_ES_MODULE = "esmodule";
499 // dependencies
500 constexpr const char* DEPENDENCIES_MODULE_NAME = "moduleName";
501 constexpr const char* DEPENDENCIES_BUNDLE_NAME = "bundleName";
502 
503 // app detail ability library path
504 constexpr const char* APP_DETAIL_ABILITY_LIBRARY_PATH = "/system/lib/appdetailability";
505 constexpr const char* APP_DETAIL_ABILITY_LIBRARY_PATH_64 = "/system/lib64/appdetailability";
506 
507 // overlay installation
508 constexpr const char* APP_TARGET_BUNDLE_NAME = "targetBundleName";
509 constexpr const char* APP_TARGET_PRIORITY = "targetPriority";
510 
511 constexpr const char* MODULE_TARGET_MODULE_NAME = "targetModuleName";
512 constexpr const char* MODULE_TARGET_PRIORITY = "targetPriority";
513 
514 constexpr const char* SYSTEM_RESOURCES_APP = "ohos.global.systemres";
515 
516 // app atomicService
517 constexpr const char* APP_ATOMIC_SERVICE_SPLIT = "split";
518 constexpr const char* APP_ATOMIC_SERVICE_MAIN = "main";
519 // module atomicService
520 constexpr const char* MODULE_ATOMIC_SERVICE_PRELOADS = "preloads";
521 // module atomicService preloads
522 constexpr const char* PRELOADS_MODULE_NAME = "moduleName";
523 // module atomicService resizeable
524 constexpr const char* MODULE_ATOMIC_SERVICE_RESIZEABLE = "resizeable";
525 
526 // bundleType
527 constexpr const char* BUNDLE_TYPE_APP = "app";
528 constexpr const char* BUNDLE_TYPE_ATOMIC_SERVICE = "atomicService";
529 constexpr const char* BUNDLE_TYPE_SHARED = "shared";
530 constexpr const char* BUNDLE_TYPE_APP_SERVICE_FWK = "appService";
531 constexpr const char* BUNDLE_TYPE_PLUGIN = "appPlugin";
532 
533 // compileSdkType
534 constexpr const char* COMPILE_SDK_VERSION = "compileSdkVersion";
535 constexpr const char* COMPILE_SDK_TYPE = "compileSdkType";
536 constexpr const char* COMPILE_SDK_TYPE_OPEN_HARMONY = "OpenHarmony";
537 
538 // moduleMenu
539 constexpr const char* MODULE_FILE_CONTEXT_MENU = "fileContextMenu";
540 
541 // module router
542 constexpr const char* MODULE_ROUTER_MAP = "routerMap";
543 
544 //module appEnvironment
545 constexpr const char* MODULE_APP_ENVIRONMENTS = "appEnvironments";
546 //module packageName
547 constexpr const char* MODULE_PACKAGE_NAME = "packageName";
548 
549 //ability start window
550 constexpr const char* START_WINDOW_APP_ICON = "startWindowAppIcon";
551 constexpr const char* START_WINDOW_ILLUSTRATION = "startWindowIllustration";
552 constexpr const char* START_WINDOW_BRANDING_IMAGE = "startWindowBrandingImage";
553 constexpr const char* START_WINDOW_BACKGROUND_COLOR = "startWindowBackgroundColor";
554 constexpr const char* START_WINDOW_BACKGROUND_IMAGE = "startWindowBackgroundImage";
555 constexpr const char* START_WINDOW_BACKGROUND_IMAGE_FIT = "startWindowBackgroundImageFit";
556 
557 // startMode in app
558 constexpr const char* START_MODE = "startMode";
559 constexpr const char* START_MODE_MAIN_TASK = "mainTask";
560 constexpr const char* START_MODE_RECENT_TASK = "recentTask";
561 
562 // test runner
563 constexpr const char* TEST_RUNNER = "testRunner";
564 constexpr const char* TEST_RUNNER_NAME = "name";
565 constexpr const char* TEST_RUNNER_SRC_PATH = "srcPath";
566 constexpr const char* TEST_RUNNER_ARKTS_MODE = "arkTSMode";
567 }  // namespace Profile
568 }  // namespace AppExecFwk
569 }  // namespace OHOS
570 #endif  // FOUNDATION_APPEXECFWK_SERVICES_BUNDLEMGR_INCLUDE_COMMON_PROFILE_H
571