1 /* 2 * Copyright (c) 2021-2023 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 // sub BUNDLE_APP_PROFILE_KEY_VERSION 54 constexpr const char* BUNDLE_APP_PROFILE_KEY_CODE = "code"; 55 constexpr const char* BUNDLE_APP_PROFILE_KEY_MIN_COMPATIBLE_VERSION_CODE = "minCompatibleVersionCode"; 56 // sub BUNDLE_APP_PROFILE_KEY_API_VERSION 57 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPATIBLE = "compatible"; 58 constexpr const char* BUNDLE_APP_PROFILE_KEY_TARGET = "target"; 59 constexpr const char* BUNDLE_APP_PROFILE_KEY_RELEASE_TYPE = "releaseType"; 60 constexpr const char* APP_RELEASE_TYPE_VALUE_RELEASE = "Release"; 61 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPILE_SDK_VERSION = "compileSdkVersion"; 62 constexpr const char* BUNDLE_APP_PROFILE_KEY_COMPILE_SDK_TYPE = "compileSdkType"; 63 // sub BUNDLE_PROFILE_KEY_DEVICE_CONFIG 64 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEFAULT = "default"; 65 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_PHONE = "phone"; 66 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TABLET = "tablet"; 67 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TV = "tv"; 68 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_CAR = "car"; 69 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_WEARABLE = "wearable"; 70 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_LITE_WEARABLE = "liteWearable"; 71 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SMART_VISION = "smartVision"; 72 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEFAULT 73 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_JOINT_USER_ID = "jointUserId"; 74 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_PROCESS = "process"; 75 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_KEEP_ALIVE = "keepAlive"; 76 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_ARK = "ark"; 77 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DIRECT_LAUNCH = "directLaunch"; 78 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SUPPORT_BACKUP = "supportBackup"; 79 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DEBUG = "debug"; 80 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_COMPRESS_NATIVE_LIBS = "compressNativeLibs"; 81 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_NETWORK = "network"; 82 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_REQ_VERSION = "reqVersion"; 83 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_FLAG = "flag"; 84 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_COMPATIBLE = "compatible"; 85 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_TARGET = "target"; 86 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_NETWORK 87 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_USES_CLEAR_TEXT = "usesCleartext"; 88 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SECURITY_CONFIG = "securityConfig"; 89 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SECURITY_CONFIG 90 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAIN_SETTINGS = "domainSettings"; 91 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAIN_SETTINGS 92 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_CLEAR_TEXT_PERMITTED = "cleartextPermitted"; 93 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAINS = "domains"; 94 // sub BUNDLE_DEVICE_CONFIG_PROFILE_KEY_DOMAINS 95 constexpr const char* BUNDLE_DEVICE_CONFIG_PROFILE_KEY_SUB_DOMAINS = "subDomains"; 96 // sub BUNDLE_PROFILE_KEY_MODULE 97 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PACKAGE = "package"; 98 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORTED_MODES = "supportedModes"; 99 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_CAPABILITIES = "reqCapabilities"; 100 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORTED_REQ_CAPABILITIES = "reqCapabilities"; 101 constexpr const char* BUNDLE_MODULE_DEPENDENCIES = "dependencies"; 102 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_IS_LIB_ISOLATED = "libIsolation"; 103 constexpr const char* MODULE_SUPPORTED_MODES_VALUE_DRIVE = "drive"; 104 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEVICE_TYPE = "deviceType"; 105 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_COLOR_MODE = "colorMode"; 106 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DISTRO = "distro"; 107 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_META_DATA = "metaData"; 108 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ABILITIES = "abilities"; 109 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_JS = "js"; 110 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_COMMON_EVENTS = "commonEvents"; 111 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUTS = "shortcuts"; 112 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEFINE_PERMISSIONS = "definePermissions"; 113 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS = "reqPermissions"; 114 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQUEST_PERMISSIONS = "requestPermissions"; 115 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_NAME = "name"; 116 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_REASON = "reason"; 117 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_USEDSCENE = "usedScene"; 118 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_ABILITY = "ability"; 119 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN = "when"; 120 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN_INUSE = "inuse"; 121 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REQ_PERMISSIONS_WHEN_ALWAYS = "always"; 122 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CUSTOMIZE_DATA = "customizeData"; 123 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MAIN_ABILITY = "mainAbility"; 124 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SRC_PATH = "srcPath"; 125 constexpr const char* BUNDLE_MODULE_PROFILE_BUILD_HASH = "buildHash"; 126 // sub BUNDLE_MODULE_PROFILE_KEY_DISTRO 127 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DELIVERY_WITH_INSTALL = "deliveryWithInstall"; 128 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_NAME = "moduleName"; 129 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_TYPE = "moduleType"; 130 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODULE_INSTALLATION_FREE = "installationFree"; 131 // sub BUNDLE_MODULE_PROFILE_KEY_SKILLS 132 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ACTIONS = "actions"; 133 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ENTITIES = "entities"; 134 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URIS = "uris"; 135 // sub BUNDLE_MODULE_PROFILE_KEY_URIS 136 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SCHEME = "scheme"; 137 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_HOST = "host"; 138 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PORT = "port"; 139 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATH = "path"; 140 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHSTARTWITH = "pathStartWith"; 141 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHREGX = "pathRegx"; 142 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PATHREGEX = "pathRegex"; 143 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TYPE = "type"; 144 // sub BUNDLE_MODULE_PROFILE_KEY_META_DATA 145 constexpr const char* BUNDLE_MODULE_META_KEY_CUSTOMIZE_DATA = "customizeData"; 146 constexpr const char* BUNDLE_MODULE_META_KEY_NAME = "name"; 147 constexpr const char* BUNDLE_MODULE_META_KEY_VALUE = "value"; 148 constexpr const char* BUNDLE_MODULE_META_KEY_EXTRA = "extra"; 149 // sub BUNDLE_MODULE_PROFILE_KEY_DISTRO_TYPE 150 constexpr const char* MODULE_DISTRO_MODULE_TYPE_VALUE_ENTRY = "entry"; 151 constexpr const char* MODULE_DISTRO_MODULE_TYPE_VALUE_FEATURE = "feature"; 152 // sub BUNDLE_MODULE_PROFILE_KEY_ABILITIES 153 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ICON = "icon"; 154 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ICON_ID = "iconId"; 155 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URI = "uri"; 156 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_LAUNCH_TYPE = "launchType"; 157 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_LAUNCH_THEME = "theme"; 158 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_VISIBLE = "visible"; 159 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CONTINUABLE = "continuable"; 160 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PERMISSIONS = "permissions"; 161 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SKILLS = "skills"; 162 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PROCESS = "process"; 163 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DEVICE_CAP_ABILITY = "deviceCapability"; 164 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORM_ENABLED = "formEnabled"; 165 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORM = "form"; 166 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_ORIENTATION = "orientation"; 167 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_BACKGROUND_MODES = "backgroundModes"; 168 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_GRANT_PERMISSION = "grantPermission"; 169 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_URI_PERMISSION = "uriPermission"; 170 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_READ_PERMISSION = "readPermission"; 171 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_WRITE_PERMISSION = "writePermission"; 172 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DIRECT_LAUNCH = "directLaunch"; 173 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_CONFIG_CHANGES = "configChanges"; 174 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MISSION = "mission"; 175 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_ABILITY = "targetAbility"; 176 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MULTIUSER_SHARED = "multiUserShared"; 177 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SUPPORT_PIP_MODE = "supportPipMode"; 178 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORMS_ENABLED = "formsEnabled"; 179 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_FORMS = "forms"; 180 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_ICON = "startWindowIcon"; 181 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_ICON_ID = "startWindowIconId"; 182 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_BACKGROUND = "startWindowBackground"; 183 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_START_WINDOW_BACKGROUND_ID = "startWindowBackgroundId"; 184 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_REMOVE_MISSION_AFTER_TERMINATE = "removeMissionAfterTerminate"; 185 // sub BUNDLE_MODULE_PROFILE_KEY_FORM 186 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_MODE = "mode"; 187 // sub BUNDLE_MODULE_PROFILE_KEY_FORM 188 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_ENTITY = "formEntity"; 189 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_MIN_HEIGHT = "minHeight"; 190 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_DEFAULT_HEIGHT = "defaultHeight"; 191 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_MIN_WIDTH = "minWidth"; 192 constexpr const char* BUNDLE_MODULE_PROFILE_FORM_DEFAULT_WIDTH = "defaultWidth"; 193 // sub BUNDLE_MODULE_PROFILE_KEY_FORMS 194 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_IS_DEFAULT = "isDefault"; 195 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_COLOR_MODE = "colorMode"; 196 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SUPPORT_DIMENSIONS = "supportDimensions"; 197 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_DEFAULT_DIMENSION = "defaultDimension"; 198 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_LANDSCAPE_LAYOUTS = "landscapeLayouts"; 199 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_PORTRAIT_LAYOUTS = "portraitLayouts"; 200 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_UPDATEENABLED = "updateEnabled"; 201 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SCHEDULED_UPDATE_TIME = "scheduledUpdateTime"; 202 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_UPDATE_DURATION = "updateDuration"; 203 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_DEEP_LINK = "deepLink"; 204 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_JS_COMPONENT_NAME = "jsComponentName"; 205 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_VALUE = "value"; 206 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_FORM_CONFIG_ABILITY = "formConfigAbility"; 207 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_FORM_VISIBLE_NOTIFY = "formVisibleNotify"; 208 constexpr const char* BUNDLE_MODULE_PROFILE_FORMS_SRC = "src"; 209 // sub BUNDLE_MODULE_PROFILE_KEY_JS 210 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PAGES = "pages"; 211 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_WINDOW = "window"; 212 // sub BUNDLE_MODULE_PROFILE_KEY_COMMON_EVENTS 213 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_PERMISSION = "permission"; 214 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DATA = "data"; 215 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_EVENTS = "events"; 216 constexpr const char* MODULE_ABILITY_JS_TYPE_VALUE_NORMAL = "normal"; 217 constexpr const char* MODULE_ABILITY_JS_TYPE_VALUE_FORM = "form"; 218 // sub BUNDLE_MODULE_PROFILE_KEY_WINDOW 219 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_DESIGN_WIDTH = "designWidth"; 220 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_AUTO_DESIGN_WIDTH = "autoDesignWidth"; 221 // sub BUNDLE_MODULE_PROFILE_KEY_SHORTCUTS 222 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_ID = "shortcutId"; 223 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_WANTS = "intents"; 224 // sub BUNDLE_MODULE_PROFILE_KEY_SHORTCUT_WANTS 225 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_CLASS = "targetClass"; 226 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_TARGET_BUNDLE = "targetBundle"; 227 // sub BUNDLE_INSTALL_MARK 228 constexpr const char* BUNDLE_INSTALL_MARK_BUNDLE = "installMarkBundle"; 229 constexpr const char* BUNDLE_INSTALL_MARK_PACKAGE = "installMarkPackage"; 230 constexpr const char* BUNDLE_INSTALL_MARK_STATUS = "installMarkStatus"; 231 // sub BUNDLE_SANDBOX_PERSISTENT_INFO 232 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_ACCESS_TOKEN_ID = "accessTokenId"; 233 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_APP_INDEX = "appIndex"; 234 constexpr const char* BUNDLE_SANDBOX_PERSISTENT_USER_ID = "userId"; 235 236 const uint32_t VALUE_HOME_SCREEN = 1 << 0; 237 // 000010 represents supporting search box 238 const uint32_t VALUE_SEARCHBOX = 1 << 1; 239 240 constexpr const char* KEY_HOME_SCREEN = "homeScreen"; 241 constexpr const char* KEY_SEARCHBOX = "searchbox"; 242 243 constexpr const char* BUNDLE_MODULE_PROFILE_KEY_JS_TYPE_ETS = "ets"; 244 245 // background modes 246 // different bits in the binary represent different services 247 // 0000001 represents data transmission services 248 constexpr uint32_t VALUE_DATA_TRANSFER = 1 << 0; 249 250 // 0000 0010 represents audio output service 251 constexpr uint32_t VALUE_AUDIO_PLAYBACK = 1 << 1; 252 253 // 0000 0100 represents audio input service 254 constexpr uint32_t VALUE_AUDIO_RECORDING = 1 << 2; 255 256 // 0000 1000 represents positioning navigation service 257 constexpr uint32_t VALUE_LOCATION = 1 << 3; 258 259 // 0001 0000 represents bluetooth scanning, connection, transmission service (wearing) 260 constexpr uint32_t VALUE_BLUETOOTH_INTERACTION = 1 << 4; 261 262 // 0010 0000 represents multi device connection services 263 constexpr uint32_t VALUE_MULTI_DEVICE_CONNECTION = 1 << 5; 264 265 // 0100 0000 represents WiFi scanning, connection, transmission services (multi-screen) 266 constexpr uint32_t VALUE_WIFI_INTERACTION = 1 << 6; 267 268 // 1000 0000 represents audio call,VOIP service 269 constexpr uint32_t VALUE_VOIP = 1 << 7; 270 271 // 1 0000 0000 represents task Keeping service 272 constexpr uint32_t VALUE_TASK_KEEPING = 1 << 8; 273 274 // 10 0000 0000 represents picture in picture service 275 constexpr uint32_t VALUE_PICTURE_IN_PICTURE = 1 << 9; 276 277 // 100 0000 0000 represents screen fetch service 278 constexpr uint32_t VALUE_SCREEN_FETCH = 1 << 10; 279 280 constexpr const char* KEY_DATA_TRANSFER = "dataTransfer"; 281 constexpr const char* KEY_AUDIO_PLAYBACK = "audioPlayback"; 282 constexpr const char* KEY_AUDIO_RECORDING = "audioRecording"; 283 constexpr const char* KEY_LOCATION = "location"; 284 constexpr const char* KEY_BLUETOOTH_INTERACTION = "bluetoothInteraction"; 285 constexpr const char* KEY_MULTI_DEVICE_CONNECTION = "multiDeviceConnection"; 286 constexpr const char* KEY_WIFI_INTERACTION = "wifiInteraction"; 287 constexpr const char* KEY_VOIP = "voip"; 288 constexpr const char* KEY_TASK_KEEPING = "taskKeeping"; 289 constexpr const char* KEY_PICTURE_IN_PICTURE = "pictureInPicture"; 290 constexpr const char* KEY_SCREEN_FETCH = "screenFetch"; 291 } // namespace ProfileReader 292 293 namespace Profile { 294 // common 295 constexpr const char* ICON = "icon"; 296 constexpr const char* ICON_ID = "iconId"; 297 constexpr const char* LABEL = "label"; 298 constexpr const char* LABEL_ID = "labelId"; 299 constexpr const char* DESCRIPTION = "description"; 300 constexpr const char* DESCRIPTION_ID = "descriptionId"; 301 constexpr const char* META_DATA = "metadata"; 302 constexpr const char* SKILLS = "skills"; 303 constexpr const char* SRC_ENTRANCE = "srcEntrance"; 304 constexpr const char* SRC_ENTRY = "srcEntry"; 305 constexpr const char* PERMISSIONS = "permissions"; 306 constexpr const char* VISIBLE = "visible"; 307 constexpr const char* EXPORTED = "exported"; 308 constexpr const char* SRC_LANGUAGE = "srcLanguage"; 309 constexpr const char* PRIORITY = "priority"; 310 constexpr const char* ATOMIC_SERVICE = "atomicService"; 311 // module.json 312 constexpr const char* APP = "app"; 313 constexpr const char* MODULE = "module"; 314 // app 315 constexpr const char* APP_BUNDLE_NAME = "bundleName"; 316 constexpr const char* APP_DEBUG = "debug"; 317 constexpr const char* APP_VENDOR = "vendor"; 318 constexpr const char* APP_VERSION_CODE = "versionCode"; 319 constexpr const char* APP_VERSION_NAME = "versionName"; 320 constexpr const char* APP_MIN_COMPATIBLE_VERSION_CODE = "minCompatibleVersionCode"; 321 constexpr const char* APP_MIN_API_VERSION = "minAPIVersion"; 322 constexpr const char* APP_TARGET_API_VERSION = "targetAPIVersion"; 323 constexpr const char* APP_API_RELEASETYPE = "apiReleaseType"; 324 constexpr const char* APP_API_RELEASETYPE_DEFAULT_VALUE = "Release"; 325 constexpr const char* APP_ENTITY_TYPE_DEFAULT_VALUE = "unspecified"; 326 constexpr const char* APP_KEEP_ALIVE = "keepAlive"; 327 constexpr const char* APP_REMOVABLE = "removable"; 328 constexpr const char* APP_SINGLETON = "singleton"; 329 constexpr const char* APP_USER_DATA_CLEARABLE = "userDataClearable"; 330 constexpr const char* APP_PHONE = "phone"; 331 constexpr const char* APP_TABLET = "tablet"; 332 constexpr const char* APP_TV = "tv"; 333 constexpr const char* APP_WEARABLE = "wearable"; 334 constexpr const char* APP_LITE_WEARABLE = "liteWearable"; 335 constexpr const char* APP_CAR = "car"; 336 constexpr const char* APP_SMART_VISION = "smartVision"; 337 constexpr const char* APP_ROUTER = "router"; 338 constexpr const char* APP_ACCESSIBLE = "accessible"; 339 constexpr const char* APP_TARGETBUNDLELIST = "targetBundleList"; 340 constexpr const char* APP_MULTI_PROJECTS = "multiProjects"; 341 constexpr const char* APP_ASAN_ENABLED = "asanEnabled"; 342 constexpr const char* APP_ATOMIC_SERVICE = "atomicService"; 343 constexpr const char* BUNDLE_TYPE = "bundleType"; 344 // module 345 constexpr const char* MODULE_NAME = "name"; 346 constexpr const char* MODULE_TYPE = "type"; 347 constexpr const char* MODULE_PROCESS = "process"; 348 constexpr const char* MODULE_MAIN_ELEMENT = "mainElement"; 349 constexpr const char* MODULE_DEVICE_TYPES = "deviceTypes"; 350 constexpr const char* MODULE_DELIVERY_WITH_INSTALL = "deliveryWithInstall"; 351 constexpr const char* MODULE_INSTALLATION_FREE = "installationFree"; 352 constexpr const char* MODULE_VIRTUAL_MACHINE = "virtualMachine"; 353 constexpr const char* MODULE_VIRTUAL_MACHINE_DEFAULT_VALUE = "default"; 354 constexpr const char* MODULE_UI_SYNTAX = "uiSyntax"; 355 constexpr const char* MODULE_UI_SYNTAX_DEFAULT_VALUE = "hml"; 356 constexpr const char* MODULE_PAGES = "pages"; 357 constexpr const char* MODULE_ABILITIES = "abilities"; 358 constexpr const char* MODULE_EXTENSION_ABILITIES = "extensionAbilities"; 359 constexpr const char* MODULE_REQUEST_PERMISSIONS = "requestPermissions"; 360 constexpr const char* MODULE_DEFINE_PERMISSIONS = "definePermissions"; 361 constexpr const char* MODULE_DEPENDENCIES = "dependencies"; 362 constexpr const char* MODULE_COMPILE_MODE = "compileMode"; 363 constexpr const char* MODULE_IS_LIB_ISOLATED = "libIsolation"; 364 constexpr const char* MODULE_ATOMIC_SERVICE = "atomicService"; 365 constexpr const char* MODULE_PROXY_DATAS = "proxyDatas"; 366 constexpr const char* MODULE_PROXY_DATA = "proxyData"; 367 constexpr const char* MODULE_BUILD_HASH = "buildHash"; 368 constexpr const char* MODULE_ISOLATION_MODE = "isolationMode"; 369 constexpr const char* MODULE_COMPRESS_NATIVE_LIBS = "compressNativeLibs"; 370 // module type 371 constexpr const char* MODULE_TYPE_ENTRY = "entry"; 372 constexpr const char* MODULE_TYPE_FEATURE = "feature"; 373 constexpr const char* MODULE_TYPE_SHARED = "shared"; 374 // deviceConfig 375 constexpr const char* MIN_API_VERSION = "minAPIVersion"; 376 constexpr const char* DEVICE_CONFIG_KEEP_ALIVE = "keepAlive"; 377 constexpr const char* DEVICE_CONFIG_REMOVABLE = "removable"; 378 constexpr const char* DEVICE_CONFIG_SINGLETON = "singleton"; 379 constexpr const char* DEVICE_CONFIG_USER_DATA_CLEARABLE = "userDataClearable"; 380 constexpr const char* DEVICE_CONFIG_ACCESSIBLE = "accessible"; 381 // metadata 382 constexpr const char* META_DATA_NAME = "name"; 383 constexpr const char* META_DATA_VALUE = "value"; 384 constexpr const char* META_DATA_RESOURCE = "resource"; 385 // metadata reserved 386 constexpr const char* META_DATA_FORM = "ohos.extension.form"; 387 constexpr const char* META_DATA_SHORTCUTS = "ohos.ability.shortcuts"; 388 constexpr const char* META_DATA_COMMON_EVENTS = "ohos.extension.staticSubscriber"; 389 // ability 390 constexpr const char* ABILITY_NAME = "name"; 391 constexpr const char* ABILITY_LAUNCH_TYPE = "launchType"; 392 constexpr const char* ABILITY_LAUNCH_TYPE_DEFAULT_VALUE = "singleton"; 393 constexpr const char* ABILITY_BACKGROUNDMODES = "backgroundModes"; 394 constexpr const char* ABILITY_CONTINUABLE = "continuable"; 395 constexpr const char* ABILITY_START_WINDOW_ICON = "startWindowIcon"; 396 constexpr const char* ABILITY_START_WINDOW_ICON_ID = "startWindowIconId"; 397 constexpr const char* ABILITY_START_WINDOW_BACKGROUND = "startWindowBackground"; 398 constexpr const char* ABILITY_START_WINDOW_BACKGROUND_ID = "startWindowBackgroundId"; 399 constexpr const char* ABILITY_REMOVE_MISSION_AFTER_TERMINATE = "removeMissionAfterTerminate"; 400 constexpr const char* ABILITY_ORIENTATION = "orientation"; 401 constexpr const char* ABILITY_SUPPORT_WINDOW_MODE = "supportWindowMode"; 402 constexpr const char* ABILITY_MAX_WINDOW_RATIO = "maxWindowRatio"; 403 constexpr const char* ABILITY_MIN_WINDOW_RATIO = "minWindowRatio"; 404 constexpr const char* ABILITY_MAX_WINDOW_WIDTH = "maxWindowWidth"; 405 constexpr const char* ABILITY_MIN_WINDOW_WIDTH = "minWindowWidth"; 406 constexpr const char* ABILITY_MAX_WINDOW_HEIGHT = "maxWindowHeight"; 407 constexpr const char* ABILITY_MIN_WINDOW_HEIGHT = "minWindowHeight"; 408 constexpr const char* ABILITY_EXCLUDE_FROM_MISSIONS = "excludeFromMissions"; 409 constexpr const char* ABILITY_UNCLEARABLE_MISSION = "unclearableMission"; 410 constexpr const char* ABILITY_RECOVERABLE = "recoverable"; 411 // extension ability 412 constexpr const char* EXTENSION_ABILITY_NAME = "name"; 413 constexpr const char* EXTENSION_ABILITY_TYPE = "type"; 414 constexpr const char* EXTENSION_URI = "uri"; 415 constexpr const char* EXTENSION_ABILITY_READ_PERMISSION = "readPermission"; 416 constexpr const char* EXTENSION_ABILITY_WRITE_PERMISSION = "writePermission"; 417 // requestPermission 418 constexpr const char* REQUESTPERMISSION_NAME = "name"; 419 constexpr const char* REQUESTPERMISSION_REASON = "reason"; 420 constexpr const char* REQUESTPERMISSION_REASON_ID = "reasonId"; 421 constexpr const char* REQUESTPERMISSION_USEDSCENE = "usedScene"; 422 constexpr const char* REQUESTPERMISSION_ABILITIES = "abilities"; 423 constexpr const char* REQUESTPERMISSION_WHEN = "when"; 424 // definePermission 425 constexpr const char* DEFINEPERMISSION_NAME = "name"; 426 constexpr const char* DEFINEPERMISSION_GRANT_MODE = "grantMode"; 427 constexpr const char* DEFINEPERMISSION_AVAILABLE_LEVEL = "availableLevel"; 428 constexpr const char* DEFINEPERMISSION_PROVISION_ENABLE = "provisionEnable"; 429 constexpr const char* DEFINEPERMISSION_DISTRIBUTED_SCENE_ENABLE = "distributedSceneEnable"; 430 constexpr const char* DEFINEPERMISSION_GRANT_MODE_SYSTEM_GRANT = "system_grant"; 431 constexpr const char* DEFINEPERMISSION_AVAILABLE_LEVEL_DEFAULT_VALUE = "normal"; 432 // apl 433 constexpr const char* AVAILABLELEVEL_NORMAL = "normal"; 434 constexpr const char* AVAILABLELEVEL_SYSTEM_BASIC = "system_basic"; 435 constexpr const char* AVAILABLELEVEL_SYSTEM_CORE = "system_core"; 436 // compile mode 437 constexpr const char* COMPILE_MODE_JS_BUNDLE = "jsbundle"; 438 constexpr const char* COMPILE_MODE_ES_MODULE = "esmodule"; 439 // dependencies 440 constexpr const char* DEPENDENCIES_MODULE_NAME = "moduleName"; 441 constexpr const char* DEPENDENCIES_BUNDLE_NAME = "bundleName"; 442 443 // app detail ability library path 444 constexpr const char* APP_DETAIL_ABILITY_LIBRARY_PATH = "/system/lib/appdetailability"; 445 constexpr const char* APP_DETAIL_ABILITY_LIBRARY_PATH_64 = "/system/lib64/appdetailability"; 446 447 // overlay installation 448 constexpr const char* APP_TARGET_BUNDLE_NAME = "targetBundleName"; 449 constexpr const char* APP_TARGET_PRIORITY = "targetPriority"; 450 451 constexpr const char* MODULE_TARGET_MODULE_NAME = "targetModuleName"; 452 constexpr const char* MODULE_TARGET_PRIORITY = "targetPriority"; 453 454 constexpr const char* SYSTEM_RESOURCES_APP = "ohos.global.systemres"; 455 456 // app atomicService 457 constexpr const char* APP_ATOMIC_SERVICE_SPLIT = "split"; 458 constexpr const char* APP_ATOMIC_SERVICE_MAIN = "main"; 459 // module atomicService 460 constexpr const char* MODULE_ATOMIC_SERVICE_PRELOADS = "preloads"; 461 // module atomicService preloads 462 constexpr const char* PRELOADS_MODULE_NAME = "moduleName"; 463 464 // bundleType 465 constexpr const char* BUNDLE_TYPE_APP = "app"; 466 constexpr const char* BUNDLE_TYPE_ATOMIC_SERVICE = "atomicService"; 467 constexpr const char* BUNDLE_TYPE_SHARED = "shared"; 468 469 // compileSdkType 470 constexpr const char* COMPILE_SDK_VERSION = "compileSdkVersion"; 471 constexpr const char* COMPILE_SDK_TYPE = "compileSdkType"; 472 constexpr const char* COMPILE_SDK_TYPE_OPEN_HARMONY = "OpenHarmony"; 473 } // namespace Profile 474 } // namespace AppExecFwk 475 } // namespace OHOS 476 #endif // FOUNDATION_APPEXECFWK_SERVICES_BUNDLEMGR_INCLUDE_COMMON_PROFILE_H 477