From 0c3aeef49e23a328965c662ba9de86f25cacf066 Mon Sep 17 00:00:00 2001 From: zhouyongfei Date: Wed, 24 Nov 2021 15:46:58 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=BE=93=E5=85=A5?= =?UTF-8?q?=E6=B3=95=E6=89=93=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyongfei --- frameworks/inputmethod_ability/BUILD.gn | 3 ++- frameworks/inputmethod_ability/include/input_method_ability.h | 2 ++ frameworks/inputmethod_ability/src/input_method_ability.cpp | 2 ++ frameworks/inputmethod_controller/BUILD.gn | 3 ++- .../inputmethod_controller/include/input_method_controller.h | 2 ++ .../inputmethod_controller/src/input_method_controller.cpp | 2 ++ 6 files changed, 12 insertions(+), 2 deletions(-) diff --git a/frameworks/inputmethod_ability/BUILD.gn b/frameworks/inputmethod_ability/BUILD.gn index 0d518b7e3..cc3c2457e 100644 --- a/frameworks/inputmethod_ability/BUILD.gn +++ b/frameworks/inputmethod_ability/BUILD.gn @@ -58,7 +58,8 @@ ohos_shared_library("inputmethod_ability") { "//utils/native/base:utils", ] - external_deps = [ "hiviewdfx_hilog_native:libhilog" ] + external_deps = [ "hiviewdfx_hilog_native:libhilog", + "bytrace_standard:bytrace_core"] public_configs = [ ":inputmethod_ability_native_config" ] diff --git a/frameworks/inputmethod_ability/include/input_method_ability.h b/frameworks/inputmethod_ability/include/input_method_ability.h index 01bfd5357..abab01fc5 100644 --- a/frameworks/inputmethod_ability/include/input_method_ability.h +++ b/frameworks/inputmethod_ability/include/input_method_ability.h @@ -30,6 +30,7 @@ #include "message.h" #include "utils.h" #include "input_method_system_ability_proxy.h" +#include "bytrace.h" namespace OHOS { namespace MiscServices { @@ -54,6 +55,7 @@ namespace MiscServices { sptr startInputToken; InputChannel *writeInputChannel; bool stop_; + uint64_t label = BYTRACE_TAG_MISC; // communicating with IMSA sptr inputControlChannel; diff --git a/frameworks/inputmethod_ability/src/input_method_ability.cpp b/frameworks/inputmethod_ability/src/input_method_ability.cpp index c14fd5ff0..e3c976d41 100644 --- a/frameworks/inputmethod_ability/src/input_method_ability.cpp +++ b/frameworks/inputmethod_ability/src/input_method_ability.cpp @@ -243,6 +243,7 @@ namespace MiscServices { { IMSA_HILOGI("InputMethodAbility::ShowInputWindow"); eventTarget_->Emit(eventTarget_, "keyboardShow", nullptr); + FinishAsyncTrace(label, TraceState::TRACE_SHOW_KEYBOARD); } void InputMethodAbility::DissmissInputWindow() @@ -254,6 +255,7 @@ namespace MiscServices { bool InputMethodAbility::InsertText(const std::string text) { IMSA_HILOGI("InputMethodAbility::InsertText"); + StartTrace(label, TraceState::TRACE_INSERT_TEXT); if (inputDataChannel == nullptr) { IMSA_HILOGI("InputMethodAbility::InsertText inputDataChanel is nullptr"); return false; diff --git a/frameworks/inputmethod_controller/BUILD.gn b/frameworks/inputmethod_controller/BUILD.gn index 71457b178..7664f463b 100644 --- a/frameworks/inputmethod_controller/BUILD.gn +++ b/frameworks/inputmethod_controller/BUILD.gn @@ -53,7 +53,8 @@ ohos_shared_library("inputmethod_client") { "//utils/native/base:utils", ] - external_deps = [ "hiviewdfx_hilog_native:libhilog" ] + external_deps = [ "hiviewdfx_hilog_native:libhilog", + "bytrace_standard:bytrace_core" ] configs = [ ":inputmethod_client_native_config" ] diff --git a/frameworks/inputmethod_controller/include/input_method_controller.h b/frameworks/inputmethod_controller/include/input_method_controller.h index f1ec5d6c5..992418f68 100644 --- a/frameworks/inputmethod_controller/include/input_method_controller.h +++ b/frameworks/inputmethod_controller/include/input_method_controller.h @@ -26,6 +26,7 @@ #include "i_input_method_agent.h" #include "message_handler.h" #include "iremote_object.h" +#include "bytrace.h" namespace OHOS { namespace MiscServices { @@ -78,6 +79,7 @@ namespace MiscServices { std::thread workThreadHandler; MessageHandler *msgHandler; bool stop_; + uint64_t label = BYTRACE_TAG_MISC; }; } } diff --git a/frameworks/inputmethod_controller/src/input_method_controller.cpp b/frameworks/inputmethod_controller/src/input_method_controller.cpp index 5e926d3ca..8b5785bbe 100644 --- a/frameworks/inputmethod_controller/src/input_method_controller.cpp +++ b/frameworks/inputmethod_controller/src/input_method_controller.cpp @@ -104,6 +104,7 @@ using namespace MessageID; case MSG_ID_INSERT_CHAR: { MessageParcel *data = msg->msgContent_; std::u16string text = data->ReadString16(); + FinishAsyncTrace(label, TraceState::TRACE_INSERT_TEXT); if (textListener != nullptr) { textListener->InsertText(text); } @@ -158,6 +159,7 @@ using namespace MessageID; void InputMethodController::Attach(sptr &listener) { + StartAsyncTrace(label, TraceState::TRACE_SHOW_KEYBOARD); PrepareInput(0, mClient, mInputDataChannel, mAttribute); textListener=listener; } -- Gitee From d5663b2b473df887a1d394c9359df0e73bf28bf7 Mon Sep 17 00:00:00 2001 From: zhouyongfei Date: Wed, 24 Nov 2021 15:50:25 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=BE=93=E5=85=A5=E6=B3=95=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=89=93=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyongfei --- services/include/global.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/include/global.h b/services/include/global.h index 353e55090..8ba8f6240 100644 --- a/services/include/global.h +++ b/services/include/global.h @@ -73,6 +73,10 @@ namespace UserState { USER_STATE_UNLOCKED, // a user is unlocked. }; }; +namespace TraceState{ + TRACE_SHOW_KEYBOARD="trace_show_keyboard"; + TRACE_INSERT_TEXT="trace_insert_text"; +}; // Error Code namespace ErrorCode { -- Gitee From 768c7b455074c74b9e72730429e490bc19ef9040 Mon Sep 17 00:00:00 2001 From: zhouyongfei Date: Sat, 27 Nov 2021 10:56:55 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=93=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyongfei --- frameworks/inputmethod_ability/BUILD.gn | 6 ++++-- .../inputmethod_ability/include/input_method_ability.h | 2 -- frameworks/inputmethod_ability/src/input_method_ability.cpp | 6 ++++-- frameworks/inputmethod_controller/BUILD.gn | 6 ++++-- .../include/input_method_controller.h | 2 -- .../inputmethod_controller/src/input_method_controller.cpp | 5 +++-- services/BUILD.gn | 5 ++++- 7 files changed, 19 insertions(+), 13 deletions(-) diff --git a/frameworks/inputmethod_ability/BUILD.gn b/frameworks/inputmethod_ability/BUILD.gn index cc3c2457e..c46055725 100644 --- a/frameworks/inputmethod_ability/BUILD.gn +++ b/frameworks/inputmethod_ability/BUILD.gn @@ -58,8 +58,10 @@ ohos_shared_library("inputmethod_ability") { "//utils/native/base:utils", ] - external_deps = [ "hiviewdfx_hilog_native:libhilog", - "bytrace_standard:bytrace_core"] + external_deps = [ + "bytrace_standard:bytrace_core", + "hiviewdfx_hilog_native:libhilog", + ] public_configs = [ ":inputmethod_ability_native_config" ] diff --git a/frameworks/inputmethod_ability/include/input_method_ability.h b/frameworks/inputmethod_ability/include/input_method_ability.h index abab01fc5..01bfd5357 100644 --- a/frameworks/inputmethod_ability/include/input_method_ability.h +++ b/frameworks/inputmethod_ability/include/input_method_ability.h @@ -30,7 +30,6 @@ #include "message.h" #include "utils.h" #include "input_method_system_ability_proxy.h" -#include "bytrace.h" namespace OHOS { namespace MiscServices { @@ -55,7 +54,6 @@ namespace MiscServices { sptr startInputToken; InputChannel *writeInputChannel; bool stop_; - uint64_t label = BYTRACE_TAG_MISC; // communicating with IMSA sptr inputControlChannel; diff --git a/frameworks/inputmethod_ability/src/input_method_ability.cpp b/frameworks/inputmethod_ability/src/input_method_ability.cpp index e3c976d41..4afea1cba 100644 --- a/frameworks/inputmethod_ability/src/input_method_ability.cpp +++ b/frameworks/inputmethod_ability/src/input_method_ability.cpp @@ -22,6 +22,8 @@ #include "iservice_registry.h" #include "system_ability_definition.h" #include "input_data_channel_proxy.h" +#include "bytrace.h" +#include "global.h" namespace OHOS { namespace MiscServices { @@ -243,7 +245,7 @@ namespace MiscServices { { IMSA_HILOGI("InputMethodAbility::ShowInputWindow"); eventTarget_->Emit(eventTarget_, "keyboardShow", nullptr); - FinishAsyncTrace(label, TraceState::TRACE_SHOW_KEYBOARD); + FinishTrace(BYTRACE_TAG_MISC); } void InputMethodAbility::DissmissInputWindow() @@ -255,7 +257,7 @@ namespace MiscServices { bool InputMethodAbility::InsertText(const std::string text) { IMSA_HILOGI("InputMethodAbility::InsertText"); - StartTrace(label, TraceState::TRACE_INSERT_TEXT); + StartTrace(BYTRACE_TAG_MISC, TraceState::ToString(TraceState::TRACE_INSERT_TEXT)); if (inputDataChannel == nullptr) { IMSA_HILOGI("InputMethodAbility::InsertText inputDataChanel is nullptr"); return false; diff --git a/frameworks/inputmethod_controller/BUILD.gn b/frameworks/inputmethod_controller/BUILD.gn index 7664f463b..1f154416c 100644 --- a/frameworks/inputmethod_controller/BUILD.gn +++ b/frameworks/inputmethod_controller/BUILD.gn @@ -53,8 +53,10 @@ ohos_shared_library("inputmethod_client") { "//utils/native/base:utils", ] - external_deps = [ "hiviewdfx_hilog_native:libhilog", - "bytrace_standard:bytrace_core" ] + external_deps = [ + "bytrace_standard:bytrace_core", + "hiviewdfx_hilog_native:libhilog", + ] configs = [ ":inputmethod_client_native_config" ] diff --git a/frameworks/inputmethod_controller/include/input_method_controller.h b/frameworks/inputmethod_controller/include/input_method_controller.h index 992418f68..f1ec5d6c5 100644 --- a/frameworks/inputmethod_controller/include/input_method_controller.h +++ b/frameworks/inputmethod_controller/include/input_method_controller.h @@ -26,7 +26,6 @@ #include "i_input_method_agent.h" #include "message_handler.h" #include "iremote_object.h" -#include "bytrace.h" namespace OHOS { namespace MiscServices { @@ -79,7 +78,6 @@ namespace MiscServices { std::thread workThreadHandler; MessageHandler *msgHandler; bool stop_; - uint64_t label = BYTRACE_TAG_MISC; }; } } diff --git a/frameworks/inputmethod_controller/src/input_method_controller.cpp b/frameworks/inputmethod_controller/src/input_method_controller.cpp index 8b5785bbe..e6de31758 100644 --- a/frameworks/inputmethod_controller/src/input_method_controller.cpp +++ b/frameworks/inputmethod_controller/src/input_method_controller.cpp @@ -17,6 +17,7 @@ #include "iservice_registry.h" #include "system_ability_definition.h" #include "global.h" +#include "bytrace.h" namespace OHOS { namespace MiscServices { @@ -104,7 +105,7 @@ using namespace MessageID; case MSG_ID_INSERT_CHAR: { MessageParcel *data = msg->msgContent_; std::u16string text = data->ReadString16(); - FinishAsyncTrace(label, TraceState::TRACE_INSERT_TEXT); + FinishTrace(BYTRACE_TAG_MISC); if (textListener != nullptr) { textListener->InsertText(text); } @@ -159,7 +160,7 @@ using namespace MessageID; void InputMethodController::Attach(sptr &listener) { - StartAsyncTrace(label, TraceState::TRACE_SHOW_KEYBOARD); + StartAsyncTrace(BYTRACE_TAG_MISC, TraceState::ToString(TraceState::TRACE_SHOW_KEYBOARD)); PrepareInput(0, mClient, mInputDataChannel, mAttribute); textListener=listener; } diff --git a/services/BUILD.gn b/services/BUILD.gn index 23db56920..f8b0218ba 100644 --- a/services/BUILD.gn +++ b/services/BUILD.gn @@ -81,7 +81,10 @@ ohos_shared_library("inputmethod_service") { "//utils/native/base:utils", ] - external_deps = [ "hiviewdfx_hilog_native:libhilog" ] + external_deps = [ + "bytrace_standard:bytrace_core", + "hiviewdfx_hilog_native:libhilog", + ] subsystem_name = "miscservices" part_name = "inputmethod_native" -- Gitee From 0be60c3d7bce455827244044f1103b1bc7639127 Mon Sep 17 00:00:00 2001 From: zhouyongfei Date: Sat, 27 Nov 2021 10:58:16 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=93=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhouyongfei --- services/src/global.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/services/src/global.cpp b/services/src/global.cpp index 7db59892b..4483904a5 100644 --- a/services/src/global.cpp +++ b/services/src/global.cpp @@ -217,6 +217,24 @@ namespace MiscServices { return "error is out of definition"; }; } + + namespace TraceState { + const char * ToString(int errorCode) + { + switch (errorCode) { + case TRACE_SHOW_KEYBOARD: { + return "trace_show_keyboard"; + } + case TRACE_INSERT_TEXT: { + return "trace_insert_text"; + } + default: { + return "trace default"; + } + } + return "trace default"; + } + } } } -- Gitee