diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt
index 97d47fb65b..92d3962a96 100644
--- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt
+++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt
@@ -79,7 +79,11 @@ class DevaToolsProvider : IDevaToolsProvider {
}
override fun initBadCase(view: View) {
- BadCaseManager.init(view)
+ BadCaseManager.initBadCase(view)
+ }
+
+ override fun initAiCollect(view: View) {
+ BadCaseManager.initAiCollect(view)
}
override fun onReceiveBadCaseRecord(record: RecordPanelOuterClass.RecordPanel) {
diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt
index 5612b4a52e..ae09074498 100644
--- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt
+++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/badcase/BadCaseManager.kt
@@ -100,6 +100,42 @@ internal object BadCaseManager : LifecycleEventObserver {
}
}
+ fun initBadCase(view: View){
+ val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.")
+ view.setOnClickListener {
+ if(ClickUtils.isFastClick()){
+ initiativeBadCaseWindow = InitiativeBadCaseWindow(activity)
+ initiativeBadCaseWindow?.setClickListener(object: InitiativeBadCaseWindow.ClickListener{
+ override fun closeWindow() {
+ initiativeBadCaseWindow?.hideFloatWindow()
+ }
+
+ })
+ initiativeBadCaseWindow?.showFloatWindow()
+ }else{
+ ToastUtils.showShort("请勿连续点击,稍后再试")
+ }
+
+ }
+ }
+
+ fun initAiCollect(view: View){
+ val activity = view.context as? FragmentActivity ?: throw IllegalStateException("please ensure context is FragmentActivity.")
+ view.setOnClickListener {
+ if(ClickUtils.isFastClick()){
+ aiDataCollectWindow = AIDataCollectWindow(activity)
+ aiDataCollectWindow?.setClickListener(object: AIDataCollectWindow.ClickListener{
+ override fun closeWindow() {
+ aiDataCollectWindow?.hideFloatWindow()
+ }
+ })
+ aiDataCollectWindow?.showFloatWindow()
+ }else{
+ ToastUtils.showShort("请勿连续点击,稍后再试")
+ }
+ }
+ }
+
fun init(view: View) {
this.viewHolder = WeakReference(view)
view.lifecycleOwner.lifecycle.addObserver(this)
diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png
new file mode 100644
index 0000000000..3b8460c384
Binary files /dev/null and b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png differ
diff --git a/core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bad_case_selector.xml b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bad_case_selector.xml
index 11a43b059b..bc47ce95d7 100644
--- a/core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bad_case_selector.xml
+++ b/core/function-impl/mogo-core-function-devatools/src/main/res/drawable/bad_case_selector.xml
@@ -4,5 +4,5 @@
-
+
\ No newline at end of file
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt
index 16b5d10c52..f88b45d72b 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt
@@ -391,7 +391,8 @@ import kotlin.collections.ArrayList
// 控制 BadCase 按钮展示
if (HmiBuildConfig.isShowBadCaseView) {
- CallerDevaToolsManager.initBadCase(badCaseToolsView)
+ CallerDevaToolsManager.initBadCase(ivBadCaseTools)
+ CallerDevaToolsManager.initAiCollect(ivAiCollectTools)
}
// 控制 红绿灯 展示
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png
new file mode 100644
index 0000000000..3b8460c384
Binary files /dev/null and b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xxhdpi/icon_bad_case_normal.png differ
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml
index 903fd53cb5..e0bc4f03fd 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml
+++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml
@@ -108,15 +108,26 @@
app:layout_goneMarginStart="50px" />
-
+
+