1/* 2 * Copyright (C) 2022 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 SERVICES_INCLUDE_SCREENLOCK_COMMON_H 17#define SERVICES_INCLUDE_SCREENLOCK_COMMON_H 18 19#include <string> 20 21#include "errors.h" 22 23namespace OHOS { 24namespace ScreenLock { 25#define SCREENLOCK_SERVICE_NAME "ScreenLockService" 26#define PARAM_ZERO 0 27#define PARAM_ONE 1 28#define PARAM_TWO 2 29 30const std::string BEGIN_WAKEUP = "beginWakeUp"; 31const std::string END_WAKEUP = "endWakeUp"; 32const std::string BEGIN_SCREEN_ON = "beginScreenOn"; 33const std::string END_SCREEN_ON = "endScreenOn"; 34const std::string BEGIN_SLEEP = "beginSleep"; 35const std::string END_SLEEP = "endSleep"; 36const std::string BEGIN_SCREEN_OFF = "beginScreenOff"; 37const std::string END_SCREEN_OFF = "endScreenOff"; 38const std::string STRONG_AUTH_CHANGED = "strongAuthChanged"; 39const std::string CHANGE_USER = "changeUser"; 40const std::string SCREENLOCK_ENABLED = "screenlockEnabled"; 41const std::string EXIT_ANIMATION = "beginExitAnimation"; 42const std::string UNLOCKSCREEN = "unlockScreen"; 43const std::string UNLOCK_SCREEN_RESULT = "unlockScreenResult"; 44const std::string LOCKSCREEN = "lockScreen"; 45const std::string LOCK_SCREEN_RESULT = "lockScreenResult"; 46const std::string SCREEN_DRAWDONE = "screenDrawDone"; 47const std::string SYSTEM_READY = "systemReady"; 48const std::string SERVICE_RESTART = "serviceRestart"; 49const int USER_NULL = -10000; 50enum ScreenLockModule { 51 SCREENLOCK_MODULE_SERVICE_ID = 0x04, 52}; 53// time error offset, used only in this file. 54constexpr ErrCode SCREENLOCK_ERR_OFFSET = ErrCodeOffset(SUBSYS_SMALLSERVICES, SCREENLOCK_MODULE_SERVICE_ID); 55 56enum ScreenLockError { 57 E_SCREENLOCK_OK = SCREENLOCK_ERR_OFFSET, 58 E_SCREENLOCK_SA_DIED, 59 E_SCREENLOCK_READ_PARCEL_ERROR, 60 E_SCREENLOCK_WRITE_PARCEL_ERROR, 61 E_SCREENLOCK_PUBLISH_FAIL, 62 E_SCREENLOCK_TRANSACT_ERROR, 63 E_SCREENLOCK_DEAL_FAILED, 64 E_SCREENLOCK_PARAMETERS_INVALID, 65 E_SCREENLOCK_SET_RTC_FAILED, 66 E_SCREENLOCK_NOT_FOUND, 67 E_SCREENLOCK_NO_PERMISSION, 68 E_SCREENLOCK_NULLPTR, 69 E_SCREENLOCK_SENDREQUEST_FAILED, 70 E_SCREENLOCK_NOT_SYSTEM_APP, 71 E_SCREENLOCK_NOT_FOCUS_APP, 72}; 73 74enum TraceTaskId : int32_t { 75 HITRACE_UNLOCKSCREEN, 76 HITRACE_LOCKSCREEN, 77 HITRACE_BUTT, 78}; 79 80enum ScreenChange { 81 SCREEN_SUCC = 0, 82 SCREEN_FAIL, 83 SCREEN_CANCEL, 84}; 85 86enum JsErrorCode : uint32_t { 87 ERR_NO_PERMISSION = 201, 88 ERR_NOT_SYSTEM_APP = 202, 89 ERR_INVALID_PARAMS = 401, 90 ERR_CANCEL_UNLOCK = 13200001, 91 ERR_SERVICE_ABNORMAL = 13200002, 92 ERR_ILLEGAL_USE = 13200003, 93}; 94 95enum class Action : uint8_t { 96 LOCK = 0, 97 UNLOCK, 98 UNLOCKSCREEN, 99}; 100 101enum class StrongAuthReasonFlags : int32_t { 102 NONE = 0x00000000, 103 AFTER_BOOT = 0x00000001, 104 AFTER_TIMEOUT = 0x00000002, 105 ACTIVE_REQUEST = 0x00000004, 106 DPM_RESTRICT = 0x00000008, 107}; 108 109constexpr int BEGIN_SLEEP_DEVICE_ADMIN_REASON = 1; 110constexpr int BEGIN_SLEEP_USER_REASON = 2; 111constexpr int BEGIN_SLEEP_LONG_TIME_UNOPERATOR = 3; 112 113constexpr int END_SLEEP_DEVICE_ADMIN_REASON = 1; 114constexpr int END_SLEEP_USER_REASON = 2; 115constexpr int END_SLEEP_LONG_TIME_UNOPERATE = 3; 116 117constexpr int SCREENLOCK_APP_CAN_USE = 1; 118constexpr int SCREENLOCK_APP_CAN_NOT_USE = 0; 119 120constexpr std::int32_t DEFAULT_ERROR = -1; 121constexpr int32_t NONE_EVENT_TYPE = 0; 122constexpr int ARGV_ZERO = 0; 123constexpr int ARGV_ONE = 1; 124constexpr int ARGV_TWO = 2; 125constexpr int ARGV_THREE = 3; 126constexpr int ARGV_NORMAL = -100; 127constexpr std::int32_t MAX_VALUE_LEN = 4096; 128constexpr const std::int32_t STR_MAX_SIZE = 256; 129constexpr int RESULT_COUNT = 2; 130constexpr int PARAMTWO = 2; 131constexpr std::int32_t ARGS_SIZE_ZERO = 0; 132constexpr std::int32_t ARGS_SIZE_ONE = 1; 133constexpr std::int32_t ARGS_SIZE_TWO = 2; 134constexpr std::int32_t ARGS_SIZE_THREE = 3; 135constexpr std::int32_t ARGS_SIZE_FOUR = 4; 136constexpr std::int32_t RESULT_ZERO = 0; 137} // namespace ScreenLock 138} // namespace OHOS 139#endif // SERVICES_INCLUDE_SCREENLOCK_COMMON_H