diff --git a/frameworks/js/napi/mission_manager/distributed_mission_manager.cpp b/frameworks/js/napi/mission_manager/distributed_mission_manager.cpp index 8b6683b6131b57f9099687fe2c091a8ea79853cc..a34065edff5aaad2e7671aef65d5c75b1de63bb5 100644 --- a/frameworks/js/napi/mission_manager/distributed_mission_manager.cpp +++ b/frameworks/js/napi/mission_manager/distributed_mission_manager.cpp @@ -1125,7 +1125,7 @@ void UvWorkOnCallback(uv_work_t *work, int status) TAG_LOGI(AAFwkTag::MISSION, "uv_queue_work end"); } -void NAPIRemoteMissionListener::NotifyMissionsChanged(const std::string &deviceId) +ErrCode NAPIRemoteMissionListener::NotifyMissionsChanged(const std::string &deviceId) { TAG_LOGI(AAFwkTag::MISSION, "called"); uv_loop_s *loop = nullptr; @@ -1133,7 +1133,7 @@ void NAPIRemoteMissionListener::NotifyMissionsChanged(const std::string &deviceI napi_get_uv_event_loop(env_, &loop); if (loop == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null loop"); - return; + return ERR_INVALID_VALUE; } uv_work_t *work = new uv_work_t; @@ -1142,7 +1142,7 @@ void NAPIRemoteMissionListener::NotifyMissionsChanged(const std::string &deviceI if (registerMissionCB == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null registerMissionCB"); delete work; - return; + return ERR_INVALID_VALUE; } registerMissionCB->cbBase.cbInfo.env = env_; registerMissionCB->cbBase.cbInfo.callback = notifyMissionsChangedRef_; @@ -1157,6 +1157,7 @@ void NAPIRemoteMissionListener::NotifyMissionsChanged(const std::string &deviceI delete work; } TAG_LOGI(AAFwkTag::MISSION, "end"); + return ERR_OK; } void NAPIRemoteOnListener::OnCallback(const uint32_t continueState, const std::string &srcDeviceId, @@ -1248,14 +1249,14 @@ void CallbackReturn(napi_value *result, RegisterMissionCB *registerMissionCB) napi_call_function(registerMissionCB->cbBase.cbInfo.env, undefined, callback, ARGS_TWO, &result[0], &callResult); } -void NAPIRemoteMissionListener::NotifySnapshot(const std::string &deviceId, int32_t missionId) +ErrCode NAPIRemoteMissionListener::NotifySnapshot(const std::string &deviceId, int32_t missionId) { uv_loop_s *loop = nullptr; napi_get_uv_event_loop(env_, &loop); if (loop == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null loop"); - return; + return ERR_INVALID_VALUE; } uv_work_t *work = new uv_work_t; @@ -1264,7 +1265,7 @@ void NAPIRemoteMissionListener::NotifySnapshot(const std::string &deviceId, int3 if (registerMissionCB == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null registerMissionCB"); delete work; - return; + return ERR_INVALID_VALUE; } registerMissionCB->cbBase.cbInfo.env = env_; registerMissionCB->cbBase.cbInfo.callback = notifySnapshotRef_; @@ -1280,6 +1281,7 @@ void NAPIRemoteMissionListener::NotifySnapshot(const std::string &deviceId, int3 delete work; } TAG_LOGI(AAFwkTag::MISSION, "NotifySnapshot end"); + return ERR_OK; } void UvWorkNotifyNetDisconnect(uv_work_t *work, int status) @@ -1320,7 +1322,7 @@ void UvWorkNotifyNetDisconnect(uv_work_t *work, int status) TAG_LOGI(AAFwkTag::MISSION, "uv_queue_work end"); } -void NAPIRemoteMissionListener::NotifyNetDisconnect(const std::string &deviceId, int32_t state) +ErrCode NAPIRemoteMissionListener::NotifyNetDisconnect(const std::string &deviceId, int32_t state) { TAG_LOGI(AAFwkTag::MISSION, "called. state: %{public}d", state); uv_loop_s *loop = nullptr; @@ -1328,7 +1330,7 @@ void NAPIRemoteMissionListener::NotifyNetDisconnect(const std::string &deviceId, napi_get_uv_event_loop(env_, &loop); if (loop == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null loop"); - return; + return ERR_INVALID_VALUE; } uv_work_t *work = new uv_work_t; @@ -1337,7 +1339,7 @@ void NAPIRemoteMissionListener::NotifyNetDisconnect(const std::string &deviceId, if (registerMissionCB == nullptr) { TAG_LOGE(AAFwkTag::MISSION, "null registerMissionCB"); delete work; - return; + return ERR_INVALID_VALUE; } registerMissionCB->cbBase.cbInfo.env = env_; registerMissionCB->cbBase.cbInfo.callback = notifyNetDisconnectRef_; @@ -1353,6 +1355,7 @@ void NAPIRemoteMissionListener::NotifyNetDisconnect(const std::string &deviceId, delete work; } TAG_LOGI(AAFwkTag::MISSION, "end"); + return ERR_OK; } void UnRegisterMissionExecuteCB(napi_env env, void *data) diff --git a/frameworks/js/napi/mission_manager/distributed_mission_manager.h b/frameworks/js/napi/mission_manager/distributed_mission_manager.h index 0db0335a895a80891cb070f9330d8369578fcea0..35b06b45aac5a74b511e9a8df70464cbc477023c 100644 --- a/frameworks/js/napi/mission_manager/distributed_mission_manager.h +++ b/frameworks/js/napi/mission_manager/distributed_mission_manager.h @@ -82,9 +82,9 @@ class NAPIRemoteMissionListener : public AAFwk::RemoteMissionListenerStub { public: virtual ~NAPIRemoteMissionListener(); - void NotifyMissionsChanged(const std::string &deviceId) override; - void NotifySnapshot(const std::string &deviceId, int32_t missionId) override; - void NotifyNetDisconnect(const std::string &deviceId, int32_t state) override; + ErrCode NotifyMissionsChanged(const std::string &deviceId) override; + ErrCode NotifySnapshot(const std::string &deviceId, int32_t missionId) override; + ErrCode NotifyNetDisconnect(const std::string &deviceId, int32_t state) override; void SetEnv(const napi_env &env); void SetNotifyMissionsChangedCBRef(const napi_ref &ref); void SetNotifySnapshotCBRef(const napi_ref &ref); diff --git a/frameworks/native/ability/native/BUILD.gn b/frameworks/native/ability/native/BUILD.gn index 3f3cf0514d059135f6ffe853fb8cdd623bd9acf7..ed6b37ab25e816160e52527a9416199ce6990599 100644 --- a/frameworks/native/ability/native/BUILD.gn +++ b/frameworks/native/ability/native/BUILD.gn @@ -332,6 +332,7 @@ ohos_shared_library("abilitykit_native") { public_configs = [ ":ability_public_config", "${ability_runtime_native_path}/ability:ability_context_public_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", "${ability_runtime_innerkits_path}/wantagent:wantagent_innerkits_public_config", ] @@ -343,6 +344,8 @@ ohos_shared_library("abilitykit_native") { ":ui_service_extension_connection", "${ability_runtime_innerkits_path}/ability_manager:ability_connect_callback_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_manager", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_start_options", "${ability_runtime_innerkits_path}/ability_manager:ability_start_setting", "${ability_runtime_innerkits_path}/ability_manager:mission_info", diff --git a/interfaces/inner_api/ability_manager/BUILD.gn b/interfaces/inner_api/ability_manager/BUILD.gn index 8bb1055efa0185b2c06da59016a9a25776c4c803..5542ece7bf858dc927885b4af4851d9c6143f07b 100644 --- a/interfaces/inner_api/ability_manager/BUILD.gn +++ b/interfaces/inner_api/ability_manager/BUILD.gn @@ -11,8 +11,29 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//build/config/components/idl_tool/idl.gni") import("//build/ohos.gni") import("//foundation/ability/ability_runtime/ability_runtime.gni") +idl_gen_interface("ability_manager_interface") { + sources = [ + "IRemoteMissionListener.idl", + ] + sources_common = [ + + ] + log_domainid = "0xD001336" + log_tag = "AbilityMgr" + subsystem_name = "ability" + part_name = "ability_runtime" +} + +config("ability_manager_idl_config") { + include_dirs = [ + "${ability_runtime_innerkits_path}/dataobs_manager/include", + "${target_gen_dir}", + #"include/", + ] +} config("ability_manager_public_config") { visibility = [ ":*" ] @@ -40,6 +61,7 @@ config("ability_manager_public_config") { "${ability_runtime_path}/interfaces/kits/native/appkit/dfr", "${ability_runtime_path}/interfaces/kits/native/appkit", "${ability_runtime_innerkits_path}/dataobs_manager/include", + "${target_gen_dir}", ] defines = [] @@ -62,10 +84,174 @@ config("ability_manager_public_config") { } } +ohos_source_set("ability_manager_proxy") { + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } + + output_values = get_target_outputs(":ability_manager_interface") + source_values = [ + "*remote_mission_listener_proxy.cpp", + ] + sources = filter_include(output_values, source_values) + + public_configs = [ + ":ability_manager_idl_config", + "${ability_runtime_services_path}/abilitymgr:abilityms_config", + ] + + public_deps = [ ":ability_connect_callback_stub" ] + + deps = [ + ":ability_manager_interface", + ":ability_start_options", + ":ability_start_setting", + ":mission_info", + ":process_options", + ":start_window_option", + "${ability_runtime_innerkits_path}/app_manager:app_manager", + "${ability_runtime_path}/utils/global/freeze:freeze_util", + "${ability_runtime_services_path}/abilitymgr:wantagent_manager", + ] + + external_deps = [ + "bundle_framework:libappexecfwk_common", + "c_utils:utils", + "common_event_service:cesfwk_innerkits", + "eventhandler:libeventhandler", + "hilog:libhilog", + "hisysevent:libhisysevent", + "hitrace:hitrace_meter", + "ipc:ipc_core", + "ipc:ipc_napi", + "jsoncpp:jsoncpp", + "relational_store:native_dataability", + "samgr:samgr_proxy", + ] + + if (host_cpu != "arm64") { + external_deps += [ "relational_store:native_rdb" ] + } + + public_external_deps = [ + "ability_base:base", + "ability_base:configuration", + "ability_base:session_info", + "ability_base:want", + "ability_base:zuri", + "background_task_mgr:bgtaskmgr_innerkits", + "bundle_framework:appexecfwk_base", + "bundle_framework:appexecfwk_core", + "init:libbegetutil", + "jsoncpp:jsoncpp", + "relational_store:native_dataability", + "relational_store:native_rdb", + ] + + if (ability_runtime_graphics) { + deps += [] + external_deps += [ + "ability_base:session_info", + "image_framework:image_native", + "window_manager:libwsutils", + "window_manager:session_manager_lite", + ] + public_external_deps += [ "graphic_2d:color_manager" ] + } + subsystem_name = "ability" + part_name = "ability_runtime" +} + +ohos_source_set("ability_manager_stub") { + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } + + output_values = get_target_outputs(":ability_manager_interface") + source_values = [ + "*remote_mission_listener_stub.cpp", + ] + sources = filter_include(output_values, source_values) + + public_configs = [ + ":ability_manager_idl_config", + "${ability_runtime_services_path}/abilitymgr:abilityms_config", + ] + + public_deps = [ ":ability_connect_callback_stub" ] + + deps = [ + ":ability_manager_interface", + ":ability_start_options", + ":ability_start_setting", + ":mission_info", + ":process_options", + ":start_window_option", + "${ability_runtime_innerkits_path}/app_manager:app_manager", + "${ability_runtime_path}/utils/global/freeze:freeze_util", + "${ability_runtime_services_path}/abilitymgr:wantagent_manager", + ] + + external_deps = [ + "bundle_framework:libappexecfwk_common", + "c_utils:utils", + "common_event_service:cesfwk_innerkits", + "eventhandler:libeventhandler", + "hilog:libhilog", + "hisysevent:libhisysevent", + "hitrace:hitrace_meter", + "ipc:ipc_core", + "ipc:ipc_napi", + "jsoncpp:jsoncpp", + "relational_store:native_dataability", + "samgr:samgr_proxy", + ] + + if (host_cpu != "arm64") { + external_deps += [ "relational_store:native_rdb" ] + } + + public_external_deps = [ + "ability_base:base", + "ability_base:configuration", + "ability_base:session_info", + "ability_base:want", + "ability_base:zuri", + "background_task_mgr:bgtaskmgr_innerkits", + "bundle_framework:appexecfwk_base", + "bundle_framework:appexecfwk_core", + "init:libbegetutil", + "jsoncpp:jsoncpp", + "relational_store:native_dataability", + "relational_store:native_rdb", + ] + + if (ability_runtime_graphics) { + deps += [] + external_deps += [ + "ability_base:session_info", + "image_framework:image_native", + "window_manager:libwsutils", + "window_manager:session_manager_lite", + ] + public_external_deps += [ "graphic_2d:color_manager" ] + } + subsystem_name = "ability" + part_name = "ability_runtime" +} + ohos_shared_library("ability_manager") { + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } use_exceptions = true branch_protector_ret = "pac_ret" - sources = [ "${ability_runtime_native_path}/ability/native/data_ability_operation.cpp", "${ability_runtime_native_path}/ability/native/data_ability_operation_builder.cpp", @@ -98,7 +284,6 @@ ohos_shared_library("ability_manager") { "${ability_runtime_services_path}/abilitymgr/src/open_link/open_link_options.cpp", "${ability_runtime_services_path}/abilitymgr/src/prepare_terminate_callback_proxy.cpp", "${ability_runtime_services_path}/abilitymgr/src/prepare_terminate_callback_stub.cpp", - "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_stub.cpp", "${ability_runtime_services_path}/abilitymgr/src/remote_on_listener_proxy.cpp", "${ability_runtime_services_path}/abilitymgr/src/remote_on_listener_stub.cpp", "${ability_runtime_services_path}/abilitymgr/src/system_ability_token_callback_stub.cpp", @@ -129,12 +314,15 @@ ohos_shared_library("ability_manager") { public_configs = [ ":ability_manager_public_config", + ":ability_manager_idl_config", "${ability_runtime_services_path}/abilitymgr:abilityms_config", ] public_deps = [ ":ability_connect_callback_stub" ] deps = [ + ":ability_manager_proxy", + ":ability_manager_stub", ":ability_start_options", ":ability_start_setting", ":mission_info", @@ -423,6 +611,8 @@ ohos_shared_library("ability_connect_callback_stub") { "bundle_framework:appexecfwk_base", "bundle_framework:appexecfwk_core", "jsoncpp:jsoncpp", + "relational_store:native_dataability", + "relational_store:native_rdb", ] if (ability_runtime_graphics) { external_deps += [ "graphic_2d:color_manager" ] diff --git a/interfaces/inner_api/ability_manager/include/remote_mission_listener_stub.h b/interfaces/inner_api/ability_manager/IRemoteMissionListener.idl similarity index 33% rename from interfaces/inner_api/ability_manager/include/remote_mission_listener_stub.h rename to interfaces/inner_api/ability_manager/IRemoteMissionListener.idl index 920f58b206719b51d6efb6b72d52a85307a5f132..f39c89bb59dc29675529ac92d2562e9481d2ed47 100644 --- a/interfaces/inner_api/ability_manager/include/remote_mission_listener_stub.h +++ b/interfaces/inner_api/ability_manager/IRemoteMissionListener.idl @@ -1,46 +1,20 @@ -/* - * Copyright (c) 2022 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_STUB_H -#define OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_STUB_H - -#include -#include - -#include "remote_mission_listener_interface.h" -#include "nocopyable.h" - -namespace OHOS { -namespace AAFwk { -/** - * interface for remote mission listener proxy. - */ -class RemoteMissionListenerStub : public IRemoteStub { -public: - RemoteMissionListenerStub(); - virtual ~RemoteMissionListenerStub(); - - virtual int OnRemoteRequest( - uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) override; -private: - DISALLOW_COPY_AND_MOVE(RemoteMissionListenerStub); - - int32_t NotifyMissionsChangedInner(MessageParcel &data, MessageParcel &reply); - int32_t NotifySnapshotInner(MessageParcel &data, MessageParcel &reply); - int32_t NotifyNetDisconnectInner(MessageParcel &data, MessageParcel &reply); -}; -} // namespace AAFwk -} // namespace OHOS -#endif // OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_STUB_H +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +interface OHOS.AAFwk.IRemoteMissionListener { + void NotifyMissionsChanged([in] String deviceId); + void NotifySnapshot([in] String deviceId, [in] int missionId); + void NotifyNetDisconnect([in] String deviceId, [in] int state); +} \ No newline at end of file diff --git a/interfaces/inner_api/ability_manager/include/ability_manager_interface.h b/interfaces/inner_api/ability_manager/include/ability_manager_interface.h index 4d576a8f5043743b07fb52f0bf550a1b7e519d7d..dfa7eacaf27474d4cf640565dd3280db5713b320 100644 --- a/interfaces/inner_api/ability_manager/include/ability_manager_interface.h +++ b/interfaces/inner_api/ability_manager/include/ability_manager_interface.h @@ -45,7 +45,7 @@ #include "keep_alive_info.h" #include "mission_info.h" #include "query_erms_observer_interface.h" -#include "remote_mission_listener_interface.h" +#include "iremote_mission_listener.h" #include "remote_on_listener_interface.h" #include "running_process_info.h" #include "sender_info.h" diff --git a/interfaces/inner_api/ability_manager/include/remote_mission_listener_interface.h b/interfaces/inner_api/ability_manager/include/remote_mission_listener_interface.h deleted file mode 100644 index c4ae1c4923b050c58e3a064e839459925a3189f0..0000000000000000000000000000000000000000 --- a/interfaces/inner_api/ability_manager/include/remote_mission_listener_interface.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) 2022 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_INTERFACE_H -#define OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_INTERFACE_H - -#include "iremote_broker.h" - -namespace OHOS { -namespace AAFwk { -/** - * @class IRemoteMissionListener - * IRemoteMissionListener is used to notify caller that remote device mission is changed. - */ -class IRemoteMissionListener : public OHOS::IRemoteBroker { -public: - DECLARE_INTERFACE_DESCRIPTOR(u"ohos.aafwk.RemoteMissionListener"); - - /** - * @brief When the remote device mission changed, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - */ - virtual void NotifyMissionsChanged(const std::string& deviceId) = 0; - - /** - * @brief When the snapshot of a mission changed, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - * @param missionId, mission Id. - */ - virtual void NotifySnapshot(const std::string& deviceId, int32_t missionId) = 0; - - /** - * @brief When the remote device disconnect, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - * @param state, device state. - */ - virtual void NotifyNetDisconnect(const std::string& deviceId, int32_t state) = 0; - - enum { - // ipc id for NotifyMissionsChanged - NOTIFY_MISSION_CHANGED = 0, - - // ipc id for NotifySnapshot - NOTIFY_SNAPSHOT = 1, - - // ipc id for NotifyNetDisconnect - NOTIFY_NET_DISCONNECT = 2 - }; -}; -} // namespace AAFwk -} // namespace OHOS -#endif // OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_INTERFACE_H diff --git a/interfaces/inner_api/ability_manager/include/remote_mission_listener_proxy.h b/interfaces/inner_api/ability_manager/include/remote_mission_listener_proxy.h deleted file mode 100644 index 5a518f1009341c1716d51127889cb28668bb1e19..0000000000000000000000000000000000000000 --- a/interfaces/inner_api/ability_manager/include/remote_mission_listener_proxy.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) 2022-2023 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_PROXY_H -#define OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_PROXY_H - -#include "iremote_proxy.h" -#include "remote_mission_listener_interface.h" - -namespace OHOS { -namespace AAFwk { -/** - * interface for remote mission listener proxy. - */ -class RemoteMissionListenerProxy : public IRemoteProxy { -public: - explicit RemoteMissionListenerProxy(const sptr &impl) : IRemoteProxy(impl) - {} - - /** - * @brief When the remote device mission changed, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - */ - virtual void NotifyMissionsChanged(const std::string& deviceId) override; - - /** - * @brief When the snapshot of a mission changed, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - * @param missionId, mission Id. - */ - virtual void NotifySnapshot(const std::string& deviceId, int32_t missionId) override; - - /** - * @brief When the remote device disconnect, AbilityMs notify the listener. - * - * @param deviceId, remote device Id. - * @param state, device state. - */ - virtual void NotifyNetDisconnect(const std::string& deviceId, int32_t state) override; - -private: - static inline BrokerDelegator delegator_; - int32_t SendTransactCmd(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option); -}; -} // namespace AAFwk -} // namespace OHOS -#endif // OHOS_ABILITY_RUNTIME_REMOTE_MISSION_LISTENER_PROXY_H diff --git a/interfaces/inner_api/app_manager/BUILD.gn b/interfaces/inner_api/app_manager/BUILD.gn index 39ea4c18d2406607ef95399cddcc6f7b36e5eaa3..46f8696fea61cc15ea12e32be0cf2475702a97c5 100644 --- a/interfaces/inner_api/app_manager/BUILD.gn +++ b/interfaces/inner_api/app_manager/BUILD.gn @@ -126,6 +126,7 @@ ohos_shared_library("app_manager") { public_configs = [ ":appmgr_core_config", ":appmgr_sdk_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", ] defines = [ "AMS_LOG_TAG = \"AppexecfwkCore\"" ] @@ -161,6 +162,7 @@ ohos_shared_library("app_manager") { "ability_base:want", "bundle_framework:appexecfwk_base", "image_framework:image_native", + "relational_store:native_dataability", "relational_store:native_rdb", ] if (ability_runtime_child_process) { diff --git a/interfaces/inner_api/extension_manager/BUILD.gn b/interfaces/inner_api/extension_manager/BUILD.gn index 2a0d85fb821d0fcbf9b261e096a6474f40bd6026..bb2caa0f8ff43ee3cc2d7a4dd8c95eb063de3321 100755 --- a/interfaces/inner_api/extension_manager/BUILD.gn +++ b/interfaces/inner_api/extension_manager/BUILD.gn @@ -44,7 +44,14 @@ ohos_shared_library("extension_manager") { ] configs = [ ":extension_manager_config" ] - public_configs = [ ":extension_manager_public_config" ] + public_configs = [ + ":extension_manager_public_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] + + deps = [ + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_interface", + ] public_deps = [ "${ability_runtime_innerkits_path}/ability_manager:ability_connect_callback_stub" ] @@ -55,6 +62,8 @@ ohos_shared_library("extension_manager") { "hilog:libhilog", "hitrace:hitrace_meter", "ipc:ipc_single", + "relational_store:native_dataability", + "relational_store:native_rdb", "safwk:system_ability_fwk", "samgr:samgr_proxy", ] diff --git a/interfaces/inner_api/wantagent/BUILD.gn b/interfaces/inner_api/wantagent/BUILD.gn index b1e9d373d3d8c656be1e22591d06408609ceea4b..b966993074910f6528c37ba30b44bf8bae86206d 100644 --- a/interfaces/inner_api/wantagent/BUILD.gn +++ b/interfaces/inner_api/wantagent/BUILD.gn @@ -64,9 +64,13 @@ ohos_shared_library("wantagent_innerkits") { "src/want_agent_info.cpp", ] - public_configs = [ ":wantagent_innerkits_public_config" ] + public_configs = [ + ":wantagent_innerkits_public_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] deps = [ + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_interface", "${ability_runtime_innerkits_path}/ability_manager:ability_start_options", "${ability_runtime_innerkits_path}/error_utils:ability_runtime_error_util", "${ability_runtime_services_path}/abilitymgr:wantagent_manager", @@ -93,6 +97,8 @@ ohos_shared_library("wantagent_innerkits") { "icu:shared_icuuc", "image_framework:image_native", "resource_management:global_resmgr", + "relational_store:native_dataability", + "relational_store:native_rdb", ] if (is_double_framework) { diff --git a/services/abilitymgr/BUILD.gn b/services/abilitymgr/BUILD.gn index 237513c55a1ef8f845bad13e4c29453c579192f3..8c1d490c17e6d0f93f748d92f3a5ff108861540c 100644 --- a/services/abilitymgr/BUILD.gn +++ b/services/abilitymgr/BUILD.gn @@ -121,6 +121,7 @@ ohos_shared_library("abilityms") { configs = [ ":abilityms_config", ":abilityms_exception_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", ] include_dirs = [ "${ability_runtime_services_path}/appdfr/include", @@ -131,8 +132,12 @@ ohos_shared_library("abilityms") { ":wantagent_manager", "${ability_runtime_innerkits_path}/ability_manager:ability_connect_callback_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_manager", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_start_options", "${ability_runtime_innerkits_path}/ability_manager:ability_start_setting", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", "${ability_runtime_innerkits_path}/ability_manager:mission_info", "${ability_runtime_innerkits_path}/ability_manager:process_options", "${ability_runtime_innerkits_path}/ability_manager:start_window_option", @@ -313,6 +318,8 @@ ohos_shared_library("wantagent_manager") { "${ability_runtime_innerkits_path}/error_utils:ability_runtime_error_util", ] + configs = [ "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config" ] + external_deps = [ "ability_base:want", "c_utils:utils", @@ -422,6 +429,8 @@ ohos_shared_library("mission_list") { "src/task_data_persistence_mgr.cpp", ] + configs = [ "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config" ] + deps = [ ":abilityms", "${ability_runtime_innerkits_path}/ability_manager:ability_manager", diff --git a/services/abilitymgr/abilitymgr.gni b/services/abilitymgr/abilitymgr.gni index 2205acc6e586d35825dfe18645ff80524f410c61..4e01376df399321800b926fae7856a4760951aba 100644 --- a/services/abilitymgr/abilitymgr.gni +++ b/services/abilitymgr/abilitymgr.gni @@ -88,7 +88,6 @@ abilityms_files = [ "src/rdb/ability_resident_process_rdb.cpp", "src/rdb/parser_util.cpp", "src/rdb/rdb_data_manager.cpp", - "src/remote_mission_listener_proxy.cpp", "src/scene_board/status_bar_delegate_manager.cpp", "src/scene_board/ui_ability_lifecycle_manager.cpp", "src/deeplink_reserve/deeplink_reserve_config.cpp", diff --git a/services/abilitymgr/src/remote_mission_listener_proxy.cpp b/services/abilitymgr/src/remote_mission_listener_proxy.cpp deleted file mode 100644 index 868655b7f8103739f6b352faf3c90fa21844db79..0000000000000000000000000000000000000000 --- a/services/abilitymgr/src/remote_mission_listener_proxy.cpp +++ /dev/null @@ -1,107 +0,0 @@ -/* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "remote_mission_listener_proxy.h" - -#include "hilog_tag_wrapper.h" - -namespace OHOS { -namespace AAFwk { -void RemoteMissionListenerProxy::NotifyMissionsChanged(const std::string& deviceId) -{ - MessageParcel data; - MessageParcel reply; - MessageOption option; - if (!data.WriteInterfaceToken(RemoteMissionListenerProxy::GetDescriptor())) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyMissionsChanged Write interface token failed"); - return; - } - if (!data.WriteString(deviceId)) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyMissionsChanged Write deviceId failed"); - return; - } - int32_t result = SendTransactCmd(IRemoteMissionListener::NOTIFY_MISSION_CHANGED, data, reply, option); - if (result != NO_ERROR) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyMissionsChanged SendRequest fail, error: %{public}d", result); - return; - } -} - -void RemoteMissionListenerProxy::NotifySnapshot(const std::string& deviceId, int32_t missionId) -{ - MessageParcel data; - MessageParcel reply; - MessageOption option; - if (!data.WriteInterfaceToken(RemoteMissionListenerProxy::GetDescriptor())) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifySnapshot Write interface token failed"); - return; - } - if (!data.WriteString(deviceId)) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifySnapshot Write deviceId failed"); - return; - } - if (!data.WriteInt32(missionId)) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifySnapshot Write missionId failed"); - return; - } - int32_t result = SendTransactCmd(IRemoteMissionListener::NOTIFY_SNAPSHOT, data, reply, option); - if (result != NO_ERROR) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifySnapshot SendRequest fail, error: %{public}d", result); - return; - } -} - -void RemoteMissionListenerProxy::NotifyNetDisconnect(const std::string& deviceId, int32_t state) -{ - MessageParcel data; - MessageParcel reply; - MessageOption option; - if (!data.WriteInterfaceToken(RemoteMissionListenerProxy::GetDescriptor())) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyNetDisconnect Write interface token failed"); - return; - } - if (!data.WriteString(deviceId)) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyNetDisconnect Write deviceId failed"); - return; - } - if (!data.WriteInt32(state)) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyNetDisconnect Write missionId failed"); - return; - } - int32_t result = SendTransactCmd(IRemoteMissionListener::NOTIFY_NET_DISCONNECT, data, reply, option); - if (result != NO_ERROR) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "NotifyNetDisconnect SendRequest fail, error: %{public}d", result); - return; - } -} - -int32_t RemoteMissionListenerProxy::SendTransactCmd(uint32_t code, MessageParcel &data, - MessageParcel &reply, MessageOption &option) -{ - sptr remote = Remote(); - if (remote == nullptr) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "null remote object"); - return ERR_NULL_OBJECT; - } - - int32_t ret = remote->SendRequest(code, data, reply, option); - if (ret != NO_ERROR) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "fail. code: %{public}d, ret: %{public}d", code, ret); - return ret; - } - return NO_ERROR; -} -} // namespace AAFwk -} // namespace OHOS diff --git a/services/abilitymgr/src/remote_mission_listener_stub.cpp b/services/abilitymgr/src/remote_mission_listener_stub.cpp deleted file mode 100644 index ce2f2ab3eca4623b5f8f61cc3ef37f9274e12097..0000000000000000000000000000000000000000 --- a/services/abilitymgr/src/remote_mission_listener_stub.cpp +++ /dev/null @@ -1,78 +0,0 @@ - -/* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "remote_mission_listener_stub.h" - -#include "hilog_tag_wrapper.h" - -namespace OHOS { -namespace AAFwk { -RemoteMissionListenerStub::RemoteMissionListenerStub() -{} - -RemoteMissionListenerStub::~RemoteMissionListenerStub() -{} - -int RemoteMissionListenerStub::OnRemoteRequest( - uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) -{ - std::u16string descriptor = RemoteMissionListenerStub::GetDescriptor(); - std::u16string remoteDescriptor = data.ReadInterfaceToken(); - if (descriptor != remoteDescriptor) { - TAG_LOGI(AAFwkTag::ABILITYMGR, "descriptor invalid"); - return ERR_INVALID_STATE; - } - - switch (code) { - case IRemoteMissionListener::NOTIFY_MISSION_CHANGED: { - return NotifyMissionsChangedInner(data, reply); - } - case IRemoteMissionListener::NOTIFY_SNAPSHOT: { - return NotifySnapshotInner(data, reply); - } - case IRemoteMissionListener::NOTIFY_NET_DISCONNECT: { - return NotifyNetDisconnectInner(data, reply); - } - default: { - return IPCObjectStub::OnRemoteRequest(code, data, reply, option); - } - } -} - -int32_t RemoteMissionListenerStub::NotifyMissionsChangedInner(MessageParcel &data, MessageParcel &reply) -{ - std::string deviceId = data.ReadString(); - NotifyMissionsChanged(deviceId); - return NO_ERROR; -} - -int32_t RemoteMissionListenerStub::NotifySnapshotInner(MessageParcel &data, MessageParcel &reply) -{ - std::string deviceId = data.ReadString(); - int32_t missionId = data.ReadInt32(); - NotifySnapshot(deviceId, missionId); - return NO_ERROR; -} - -int32_t RemoteMissionListenerStub::NotifyNetDisconnectInner(MessageParcel &data, MessageParcel &reply) -{ - std::string deviceId = data.ReadString(); - int32_t state = data.ReadInt32(); - NotifyNetDisconnect(deviceId, state); - return NO_ERROR; -} -} // namespace AAFwk -} // namespace OHOS diff --git a/services/appmgr/BUILD.gn b/services/appmgr/BUILD.gn index 81f2ddcdac9ad40f2bd2ad30be8a98b388c027d4..7386138f6373fe72920617163cc9372d94e47d4c 100644 --- a/services/appmgr/BUILD.gn +++ b/services/appmgr/BUILD.gn @@ -99,7 +99,10 @@ ohos_shared_library("libappms") { defines += [ "ABILITY_PLATFORM_CHECK_PERMISSION" ] } - configs = [ ":appmgr_config" ] + configs = [ + ":appmgr_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] cflags = [] if (target_cpu == "arm") { cflags += [ "-DBINDER_IPC_32BIT" ] diff --git a/test/fuzztest/registermissionlistener_fuzzer/registermissionlistener_fuzzer.cpp b/test/fuzztest/registermissionlistener_fuzzer/registermissionlistener_fuzzer.cpp index 48f3e7b730a674957b606f4353b65e5d8feead7c..770826b79cbe69308b47cfd9a80c154cffecda1e 100755 --- a/test/fuzztest/registermissionlistener_fuzzer/registermissionlistener_fuzzer.cpp +++ b/test/fuzztest/registermissionlistener_fuzzer/registermissionlistener_fuzzer.cpp @@ -20,7 +20,7 @@ #include "ability_manager_client.h" #include "mission_listener_interface.h" -#include "remote_mission_listener_interface.h" +#include "iremote_mission_listener.h" #include "securec.h" using namespace OHOS::AAFwk; @@ -48,9 +48,9 @@ class RemoteMissionListenerFuzz : public IRemoteMissionListener { public: explicit RemoteMissionListenerFuzz() {}; virtual ~RemoteMissionListenerFuzz() {}; - void NotifyMissionsChanged(const std::string& deviceId) override {}; - void NotifySnapshot(const std::string& deviceId, int32_t missionId) override {}; - void NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {}; + ErrCode NotifyMissionsChanged(const std::string& deviceId) override {}; + ErrCode NotifySnapshot(const std::string& deviceId, int32_t missionId) override {}; + ErrCode NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {}; }; bool DoSomethingInterestingWithMyAPI(const char* data, size_t size) { diff --git a/test/fuzztest/remotemissionlistenerstub_fuzzer/remotemissionlistenerstub_fuzzer.cpp b/test/fuzztest/remotemissionlistenerstub_fuzzer/remotemissionlistenerstub_fuzzer.cpp index 11df4a76870ece230bbee859d8755b150bc1c0c4..23285792ccc54451b74e167e694f54bbdf5b1280 100755 --- a/test/fuzztest/remotemissionlistenerstub_fuzzer/remotemissionlistenerstub_fuzzer.cpp +++ b/test/fuzztest/remotemissionlistenerstub_fuzzer/remotemissionlistenerstub_fuzzer.cpp @@ -36,11 +36,11 @@ public: RemoteMissionListenerStubFuzzTest() = default; virtual ~RemoteMissionListenerStubFuzzTest() {}; - void NotifyMissionsChanged(const std::string& deviceId) override + ErrCode NotifyMissionsChanged(const std::string& deviceId) override {} - void NotifySnapshot(const std::string& deviceId, int32_t missionId) override + ErrCode NotifySnapshot(const std::string& deviceId, int32_t missionId) override {} - void NotifyNetDisconnect(const std::string& deviceId, int32_t state) override + ErrCode NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {} }; diff --git a/test/fuzztest/unregistermissionlistener_fuzzer/unregistermissionlistener_fuzzer.cpp b/test/fuzztest/unregistermissionlistener_fuzzer/unregistermissionlistener_fuzzer.cpp index 23ae7a30f3428ac96fbe60aa56171731cd90f84b..df4b46e587b0130a67cdad9fa51ac41f702d87ae 100644 --- a/test/fuzztest/unregistermissionlistener_fuzzer/unregistermissionlistener_fuzzer.cpp +++ b/test/fuzztest/unregistermissionlistener_fuzzer/unregistermissionlistener_fuzzer.cpp @@ -20,7 +20,7 @@ #include "ability_manager_client.h" #include "mission_listener_interface.h" -#include "remote_mission_listener_interface.h" +#include "iremote_mission_listener.h" #include "securec.h" using namespace OHOS::AAFwk; @@ -48,9 +48,9 @@ class RemoteMissionListenerFuzz : public IRemoteMissionListener { public: explicit RemoteMissionListenerFuzz() {}; virtual ~RemoteMissionListenerFuzz() {}; - void NotifyMissionsChanged(const std::string& deviceId) override {}; - void NotifySnapshot(const std::string& deviceId, int32_t missionId) override {}; - void NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {}; + ErrCode NotifyMissionsChanged(const std::string& deviceId) override {}; + ErrCode NotifySnapshot(const std::string& deviceId, int32_t missionId) override {}; + ErrCode NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {}; }; bool DoSomethingInterestingWithMyAPI(const char* data, size_t size) { diff --git a/test/moduletest/ability_manager_client_test/mock_ihiddenstartobserver.h b/test/moduletest/ability_manager_client_test/mock_ihiddenstartobserver.h index 7e83a7fb17b60d9cbef0f4621064ee27917007f5..43d337d07f64de0daa80f3dbd0fe247e0286b909 100644 --- a/test/moduletest/ability_manager_client_test/mock_ihiddenstartobserver.h +++ b/test/moduletest/ability_manager_client_test/mock_ihiddenstartobserver.h @@ -21,7 +21,7 @@ namespace OHOS { namespace AAFwk { class MockIHiddenStartObserver : public IHiddenStartObserver { public: - bool IsHiddenStart(int32_t pid) override + bool IsHiddenStart(int32_t pid) { return true; } diff --git a/test/unittest/BUILD.gn b/test/unittest/BUILD.gn index c2ce241226c11d4e830ab1fd67708e1157020eef..1bd44d25633367a273e8fbe9fbd2937399fbaacd 100644 --- a/test/unittest/BUILD.gn +++ b/test/unittest/BUILD.gn @@ -103,6 +103,240 @@ config("test_exception_config") { cflags_cc = [ "-fexceptions" ] } +ohos_source_set("abilityms_test_source") { + sources = [ + "${ability_runtime_services_path}/abilitymgr/src/ability_background_connection.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_bundle_event_callback.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_cache_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_connect_callback_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_connect_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_debug_deal.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_event_handler.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_manager_collaborator_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_manager_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_manager_service.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_manager_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_scheduler_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_scheduler_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_token_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ams_configuration_parameter.cpp", + "${ability_runtime_services_path}/abilitymgr/src/app_exit_reason_data_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/app_exit_reason_helper.cpp", + "${ability_runtime_services_path}/abilitymgr/src/assert_fault_callback_death_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/assert_fault_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/atomic_service_status_callback.cpp", + "${ability_runtime_services_path}/abilitymgr/src/atomic_service_status_callback_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/atomic_service_status_callback_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/background_task_observer.cpp", + "${ability_runtime_services_path}/abilitymgr/src/call_container.cpp", + "${ability_runtime_services_path}/abilitymgr/src/call_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/caller_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/connection_observer_controller.cpp", + "${ability_runtime_services_path}/abilitymgr/src/connection_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/connection_state_item.cpp", + "${ability_runtime_services_path}/abilitymgr/src/connection_state_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/data_ability/data_ability_caller_recipient.cpp", + "${ability_runtime_services_path}/abilitymgr/src/data_ability/data_ability_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/data_ability/data_ability_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/dialog_session/dialog_session_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/dlp_state_item.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ecological_rule/ability_ecological_rule_mgr_service.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ecological_rule/ability_ecological_rule_mgr_service_param.cpp", + "${ability_runtime_services_path}/abilitymgr/src/exit_info_data_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/exit_reason.cpp", + "${ability_runtime_services_path}/abilitymgr/src/extension_record/extension_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/extension_record/extension_record_factory.cpp", + "${ability_runtime_services_path}/abilitymgr/src/extension_record/extension_record_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/free_install_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_execute_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_profile.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_utils.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/extract_insight_intent_profile.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_db_cache.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_event_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_rdb_data_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_rdb_storage_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/insight_intent/insight_intent_sys_event_receiver.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/ability_interceptor_executer.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/ability_jump_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/control_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/crowd_test_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/disposed_rule_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/ecological_rule_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/interceptor/start_other_app_interceptor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/lifecycle_deal.cpp", + "${ability_runtime_services_path}/abilitymgr/src/pending_want_common_event.cpp", + "${ability_runtime_services_path}/abilitymgr/src/pending_want_key.cpp", + "${ability_runtime_services_path}/abilitymgr/src/pending_want_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/pending_want_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/resident_process/resident_process_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/restart_app_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/scene_board/status_bar_delegate_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/scene_board/ui_ability_lifecycle_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/sender_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/start_ability_handler.cpp", + "${ability_runtime_services_path}/abilitymgr/src/start_ability_handler/start_ability_sandbox_savefile.cpp", + "${ability_runtime_services_path}/abilitymgr/src/sub_managers_helper.cpp", + "${ability_runtime_services_path}/abilitymgr/src/task_data_persistence_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ui_extension_record/ui_extension_record.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ui_extension_record/ui_extension_record_factory.cpp", + "${ability_runtime_services_path}/abilitymgr/src/user_controller.cpp", + "${ability_runtime_services_path}/abilitymgr/src/user_event_handler.cpp", + "${ability_runtime_services_path}/abilitymgr/src/utils/ability_event_util.cpp", + "${ability_runtime_services_path}/abilitymgr/src/utils/start_ability_utils.cpp", + "${ability_runtime_services_path}/abilitymgr/src/utils/hmsf_utils.cpp", + "${ability_runtime_services_path}/abilitymgr/src/utils/timeout_state_utils.cpp", + "${ability_runtime_services_path}/abilitymgr/src/want_receiver_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/want_receiver_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/want_sender_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/want_sender_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/want_sender_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/wants_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/window_focus_changed_listener.cpp", + "${ability_runtime_services_path}/common/src/event_report.cpp", + "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/src/appmgr/app_mgr_client.cpp", + "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/src/appmgr/app_state_callback_host.cpp", + "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/src/appmgr/app_state_callback_proxy.cpp", + ] + + include_dirs = [ + "${ability_runtime_services_path}/appdfr/include", + "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core", + "${ability_runtime_innerkits_path}/app_manager/include/appmgr", + "${ability_runtime_path}/interfaces/kits/native/appkit/ability_runtime/context", + "${ability_runtime_path}/interfaces/kits/native/ability/native/distributed_ability_runtime", + "${ability_runtime_innerkits_path}/dataobs_manager/include", + "${ability_runtime_services_path}/abilitymgr/include/mission", + ] + + cflags_cc = [] + configs = [ + ":test_exception_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] + + public_configs = [ + "${ability_runtime_services_path}/abilitymgr:abilityms_config", + "${ability_runtime_test_path}/mock/services_abilitymgr_test:aafwk_mock_config", + ] + cflags = [] + if (target_cpu == "arm") { + cflags += [ "-DBINDER_IPC_32BIT" ] + } + deps = [ + "${ability_runtime_innerkits_path}/ability_manager:ability_manager", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", + "${ability_runtime_innerkits_path}/ability_manager:process_options", + "${ability_runtime_innerkits_path}/ability_manager:start_window_option", + "${ability_runtime_innerkits_path}/app_manager:app_manager", + "${ability_runtime_innerkits_path}/connectionobs_manager:connection_obs_manager", + "${ability_runtime_innerkits_path}/deps_wrapper:ability_deps_wrapper", + "${ability_runtime_native_path}/appkit:appkit_manager_helper", + "${ability_runtime_path}/utils/global/freeze:freeze_util", + "${ability_runtime_path}/utils/server/startup:startup_util", + "${ability_runtime_services_path}/abilitymgr:abilityms", + "${ability_runtime_services_path}/common:app_util", + "${ability_runtime_services_path}/common:task_handler_wrap", + ] + + external_deps = [ + "ability_base:base", + "ability_base:configuration", + "ability_base:extractortool", + "ability_base:view_data", + "ability_base:want", + "access_token:libaccesstoken_sdk", + "bundle_framework:appexecfwk_base", + "bundle_framework:appexecfwk_core", + "bundle_framework:libappexecfwk_common", + "c_utils:utils", + "common_event_service:cesfwk_core", + "common_event_service:cesfwk_innerkits", + "config_policy:configpolicy_util", + "dsoftbus:softbus_client", + "ffrt:libffrt", + "hicollie:libhicollie", + "hilog:libhilog", + "hisysevent:libhisysevent", + "hitrace:hitrace_meter", + "init:libbeget_proxy", + "init:libbegetutil", + "ipc:ipc_core", + "jsoncpp:jsoncpp", + "kv_store:distributeddata_inner", + "relational_store:native_appdatafwk", + "relational_store:native_dataability", + "relational_store:native_rdb", + "resource_management:global_resmgr", + "safwk:system_ability_fwk", + "samgr:samgr_proxy", + "window_manager:libmodal_system_ui_extension_client", + "window_manager:libwsutils", + "window_manager:sms", + ] + + defines = [] + if (resource_schedule_service_enable) { + cflags_cc += [ "-RESOURCE_SCHEDULE_SERVICE_ENABLE" ] + external_deps += [ "resource_schedule_service:ressched_client" ] + } + if (os_dlp_part_enabled) { + cflags_cc += [ "-DWITH_DLP" ] + } + if (ability_runtime_child_process) { + defines += [ "SUPPORT_CHILD_PROCESS" ] + } + + if (ability_runtime_graphics) { + sources += [ + "${ability_runtime_services_path}/abilitymgr/src/ability_first_frame_state_observer_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/implicit_start_processor.cpp", + "${ability_runtime_services_path}/abilitymgr/src/inner_mission_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_data_storage.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_info.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_info_mgr.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_list.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_list_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_listener_controller.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_listener_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_listener_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/mission/mission_snapshot.cpp", + "${ability_runtime_services_path}/abilitymgr/src/ability_start_with_wait_observer_manager/ability_start_with_wait_observer_manager.cpp", + "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_proxy.cpp", + "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_stub.cpp", + "${ability_runtime_services_path}/abilitymgr/src/system_dialog_scheduler.cpp", + "${ability_runtime_services_path}/appdfr/src/application_anr_listener.cpp", + ] + external_deps += [ + "i18n:intl_util", + "icu:shared_icuuc", + "image_framework:image_native", + "input:libmmi-client", + "libjpeg-turbo:turbojpeg", + "window_manager:libdm", + "window_manager:libmodal_system_ui_extension_client", + "window_manager:libwm", + "window_manager:libwsutils", + "window_manager:sms", + ] + } + if (ability_runtime_upms) { + defines += [ "SUPPORT_UPMS" ] + sources += + [ "${ability_runtime_services_path}/abilitymgr/src/utils/uri_utils.cpp" ] + + deps += [ + "${ability_runtime_innerkits_path}/uri_permission:uri_permission_mgr", + ] + } + + subsystem_name = "ability" + part_name = "ability_runtime" +} + group("unittest") { testonly = true diff --git a/test/unittest/ability_manager_proxy_sixth_test/ability_manager_proxy_sixth_test.cpp b/test/unittest/ability_manager_proxy_sixth_test/ability_manager_proxy_sixth_test.cpp index a1e9cc56cc4dd8c6d3acdae9a8a5c1ed164abd08..2780bd84ec663dcc1c5c7e7a4d9e69c8ecae003c 100644 --- a/test/unittest/ability_manager_proxy_sixth_test/ability_manager_proxy_sixth_test.cpp +++ b/test/unittest/ability_manager_proxy_sixth_test/ability_manager_proxy_sixth_test.cpp @@ -51,7 +51,7 @@ class MockIHiddenStartObserver : public IHiddenStartObserver { public: bool IsHiddenStart(int32_t pid) { - return false; + return true; } sptr AsObject() { diff --git a/test/unittest/ability_manager_service_fourteenth_test/BUILD.gn b/test/unittest/ability_manager_service_fourteenth_test/BUILD.gn index 2c64030a5fd02efb43af2946beda4ebe3c868f10..9e32e070e01b4077f1c792a65b8c24cc0efc5592 100644 --- a/test/unittest/ability_manager_service_fourteenth_test/BUILD.gn +++ b/test/unittest/ability_manager_service_fourteenth_test/BUILD.gn @@ -28,6 +28,7 @@ ohos_unittest("ability_manager_service_fourteenth_test") { configs = [ ":abilityms_config", ":abilityms_exception_config", + ":ability_manager_idl_config", ] include_dirs = [ "../ability_manager_service_thirteenth_test/mock/include", @@ -162,7 +163,6 @@ ohos_unittest("ability_manager_service_fourteenth_test") { "${ability_runtime_services_path}/abilitymgr/src/rdb/parser_util.cpp", "${ability_runtime_services_path}/abilitymgr/src/rdb/rdb_data_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/recovery_info_timer.cpp", - "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_proxy.cpp", "${ability_runtime_services_path}/abilitymgr/src/resident_process/resident_process_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/restart_app_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/scene_board/status_bar_delegate_manager.cpp", @@ -231,6 +231,8 @@ ohos_unittest("ability_manager_service_fourteenth_test") { deps = [ "${ability_runtime_innerkits_path}/ability_manager:ability_connect_callback_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_manager", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_start_options", "${ability_runtime_innerkits_path}/ability_manager:ability_start_setting", "${ability_runtime_innerkits_path}/ability_manager:mission_info", diff --git a/test/unittest/ability_manager_service_second_test/ability_manager_service_second_test.cpp b/test/unittest/ability_manager_service_second_test/ability_manager_service_second_test.cpp index a4b04ea34be6af71ed1dee4abc30e174d8036737..aad36c50c397411db6bbd0469811a9a2744d348d 100644 --- a/test/unittest/ability_manager_service_second_test/ability_manager_service_second_test.cpp +++ b/test/unittest/ability_manager_service_second_test/ability_manager_service_second_test.cpp @@ -63,13 +63,13 @@ public: class MockIRemoteMissionListener : public IRemoteMissionListener { public: virtual ~MockIRemoteMissionListener() {} - void NotifyMissionsChanged(const std::string& deviceId) override + ErrCode NotifyMissionsChanged(const std::string& deviceId) override {} - void NotifySnapshot(const std::string& deviceId, int32_t missionId) override + ErrCode NotifySnapshot(const std::string& deviceId, int32_t missionId) override {} - void NotifyNetDisconnect(const std::string& deviceId, int32_t state) override + ErrCode NotifyNetDisconnect(const std::string& deviceId, int32_t state) override {} sptr AsObject() override diff --git a/test/unittest/ability_manager_service_thirteenth_test/BUILD.gn b/test/unittest/ability_manager_service_thirteenth_test/BUILD.gn index ea88cb70833b1dc153c75a8449ddeaa01d85c014..6bc6bd005f3f4f77bb97a61e54496ff013db6cae 100644 --- a/test/unittest/ability_manager_service_thirteenth_test/BUILD.gn +++ b/test/unittest/ability_manager_service_thirteenth_test/BUILD.gn @@ -28,6 +28,7 @@ ohos_unittest("ability_manager_service_thirteenth_test") { configs = [ ":abilityms_config", ":abilityms_exception_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", ] include_dirs = [ "mock/include", @@ -162,7 +163,6 @@ ohos_unittest("ability_manager_service_thirteenth_test") { "${ability_runtime_services_path}/abilitymgr/src/rdb/parser_util.cpp", "${ability_runtime_services_path}/abilitymgr/src/rdb/rdb_data_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/recovery_info_timer.cpp", - "${ability_runtime_services_path}/abilitymgr/src/remote_mission_listener_proxy.cpp", "${ability_runtime_services_path}/abilitymgr/src/resident_process/resident_process_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/restart_app_manager.cpp", "${ability_runtime_services_path}/abilitymgr/src/scene_board/status_bar_delegate_manager.cpp", @@ -230,6 +230,8 @@ ohos_unittest("ability_manager_service_thirteenth_test") { deps = [ "${ability_runtime_innerkits_path}/ability_manager:ability_connect_callback_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_manager", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_proxy", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_stub", "${ability_runtime_innerkits_path}/ability_manager:ability_start_options", "${ability_runtime_innerkits_path}/ability_manager:ability_start_setting", "${ability_runtime_innerkits_path}/ability_manager:mission_info", diff --git a/test/unittest/hidden_start_observer_manager_test/BUILD.gn b/test/unittest/hidden_start_observer_manager_test/BUILD.gn index 9403ccd18e1c2b3af42106e5f3901d8f00f82c4e..0fbcaa021ed55b314f24ced67237c2e8ec3fd08f 100644 --- a/test/unittest/hidden_start_observer_manager_test/BUILD.gn +++ b/test/unittest/hidden_start_observer_manager_test/BUILD.gn @@ -25,14 +25,20 @@ ohos_unittest("hidden_start_observer_manager_test") { } module_out_path = module_output_path - include_dirs = [ "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/include" ] + include_dirs = [ + "${ability_runtime_test_path}/mock/services_abilitymgr_test/libs/appexecfwk_core/include", + "${target_gen_dir}", + ] sources = [ "hidden_start_observer_manager_test.cpp", "${ability_runtime_services_path}/abilitymgr/src/hidden_start_observer_manager.cpp", ] - configs = [ "${ability_runtime_services_path}/abilitymgr:abilityms_config" ] + configs = [ + "${ability_runtime_services_path}/abilitymgr:abilityms_config", + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] deps = [ "${ability_runtime_innerkits_path}/app_manager:app_manager", diff --git a/test/unittest/remote_mission_listener_proxy_test/remote_mission_listener_stub_mock.h b/test/unittest/remote_mission_listener_proxy_test/remote_mission_listener_stub_mock.h index 3a82252d1b9e8d0e986ae8e54f3cdeb93c8f2715..9bba71c25e99003a6695036df2ef85af66acf62e 100755 --- a/test/unittest/remote_mission_listener_proxy_test/remote_mission_listener_stub_mock.h +++ b/test/unittest/remote_mission_listener_proxy_test/remote_mission_listener_stub_mock.h @@ -18,7 +18,7 @@ #include #include #include -#include "remote_mission_listener_interface.h" +#include "iremote_mission_listener.h" namespace OHOS { namespace AAFwk { @@ -45,9 +45,9 @@ public: int code_ = 0; - virtual void NotifyMissionsChanged(const std::string& deviceId) {}; - virtual void NotifySnapshot(const std::string& deviceId, int32_t missionId) {}; - virtual void NotifyNetDisconnect(const std::string& deviceId, int32_t state) {}; + virtual ErrCode NotifyMissionsChanged(const std::string& deviceId) {}; + virtual ErrCode NotifySnapshot(const std::string& deviceId, int32_t missionId) {}; + virtual ErrCode NotifyNetDisconnect(const std::string& deviceId, int32_t state) {}; }; } // namespace AAFwk } // namespace OHOS diff --git a/test/unittest/remote_mission_listener_stub_test/mock_remote_mission_listener_stub.h b/test/unittest/remote_mission_listener_stub_test/mock_remote_mission_listener_stub.h index c726f434b8817c1e5e5bd14ef63d6a5779f4a464..8df218798c16009fa24650b34092d55d255f501a 100755 --- a/test/unittest/remote_mission_listener_stub_test/mock_remote_mission_listener_stub.h +++ b/test/unittest/remote_mission_listener_stub_test/mock_remote_mission_listener_stub.h @@ -29,9 +29,9 @@ public: MockRemoteMissionListenerStub() = default; virtual ~MockRemoteMissionListenerStub() = default; - MOCK_METHOD1(NotifyMissionsChanged, void(const std::string& deviceId)); - MOCK_METHOD2(NotifySnapshot, void(const std::string& deviceId, int32_t missionId)); - MOCK_METHOD2(NotifyNetDisconnect, void(const std::string& deviceId, int32_t state)); + MOCK_METHOD1(NotifyMissionsChanged, ErrCode(const std::string& deviceId)); + MOCK_METHOD2(NotifySnapshot, ErrCode(const std::string& deviceId, int32_t missionId)); + MOCK_METHOD2(NotifyNetDisconnect, ErrCode(const std::string& deviceId, int32_t state)); }; } // namespace AAFwk } // namespace OHOS diff --git a/tools/aa/BUILD.gn b/tools/aa/BUILD.gn index d6ec4e440c24ab088a7c976c62ade9d8402e6b8c..55472741a99d69f77177692ffbbe8cb0560d23b6 100644 --- a/tools/aa/BUILD.gn +++ b/tools/aa/BUILD.gn @@ -96,6 +96,10 @@ ohos_executable("aa") { cflags += [ "-DBINDER_IPC_32BIT" ] } + configs = [ + "${ability_runtime_innerkits_path}/ability_manager:ability_manager_idl_config", + ] + deps = [ ":tools_aa_source_set" ] external_deps = [