[3.3.0][魔方] 移除之前在调试面板上的魔方调试入口,迁移到运营面板上;添加[魔方指令测试]开关,打开后用户点击魔方按键只显示Toast不给工控机下发指令
This commit is contained in:
@@ -15,7 +15,9 @@ import com.mogo.eagle.core.function.api.devatools.mofang.IMoGoMoFangProvider.OnM
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.eagle.core.utilcode.util.Utils
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
import java.util.concurrent.atomic.AtomicBoolean
|
||||
import java.util.concurrent.atomic.AtomicInteger
|
||||
import java.util.concurrent.atomic.AtomicReference
|
||||
|
||||
internal class MoGoMoFangProviderImpl: IMoGoMoFangProvider, OnMoFangDeviceListener {
|
||||
|
||||
@@ -31,6 +33,18 @@ internal class MoGoMoFangProviderImpl: IMoGoMoFangProvider, OnMoFangDeviceListen
|
||||
|
||||
private val linkedLog by lazy { MoFangLinkedLog().also { executor.setLinkedLog(it) } }
|
||||
|
||||
private val isTest by lazy { AtomicBoolean(false) }
|
||||
|
||||
private val toast by lazy { AtomicReference<Toast>() }
|
||||
|
||||
override fun enableTest(enable: Boolean) {
|
||||
isTest.set(enable)
|
||||
}
|
||||
|
||||
override fun isEnableTest(): Boolean {
|
||||
return isTest.get()
|
||||
}
|
||||
|
||||
override fun init(app: Application) {
|
||||
try {
|
||||
linkedLog.record(mapOf("init" to "start"))
|
||||
@@ -135,6 +149,13 @@ internal class MoGoMoFangProviderImpl: IMoGoMoFangProvider, OnMoFangDeviceListen
|
||||
}
|
||||
|
||||
override fun onBluetoothKeyBoardCombineClicked(vararg keyCodes: Int) {
|
||||
if (isTest.get()) {
|
||||
toast.get()?.cancel()
|
||||
Toast.makeText(Utils.getApp(), "组合键[${keyCodes.joinToString(",") { KeyEvent.keyCodeToString(it) }}]触发了\n[正式使用时,请关闭运营面板上的\"魔方指令\"测试开关]", Toast.LENGTH_SHORT).also {
|
||||
toast.set(it)
|
||||
}.show()
|
||||
return
|
||||
}
|
||||
try {
|
||||
linkedLog.record(mapOf("command" to "combine_clicked: ${keyCodes.joinToString(",") { KeyEvent.keyCodeToString(it) } }"))
|
||||
executor.handleCombineClick(*keyCodes)
|
||||
@@ -146,6 +167,13 @@ internal class MoGoMoFangProviderImpl: IMoGoMoFangProvider, OnMoFangDeviceListen
|
||||
}
|
||||
|
||||
override fun onBluetoothKeyBoardLongClicked(keyCode: Int) {
|
||||
if (isTest.get()) {
|
||||
toast.get()?.cancel()
|
||||
Toast.makeText(Utils.getApp(), "长按键[${KeyEvent.keyCodeToString(keyCode)}]触发了\n[正式使用时,请关闭运营面板上的\"魔方指令\"测试开关]", Toast.LENGTH_SHORT).also {
|
||||
toast.set(it)
|
||||
}.show()
|
||||
return
|
||||
}
|
||||
try {
|
||||
linkedLog.record(mapOf("command" to "long_clicked: ${ KeyEvent.keyCodeToString(keyCode) }"))
|
||||
executor.handleLongClick(keyCode)
|
||||
@@ -159,6 +187,13 @@ internal class MoGoMoFangProviderImpl: IMoGoMoFangProvider, OnMoFangDeviceListen
|
||||
}
|
||||
|
||||
override fun onBluetoothKeyboardClicked(keyCode: Int) {
|
||||
if (isTest.get()) {
|
||||
toast.get()?.cancel()
|
||||
Toast.makeText(Utils.getApp(), "单击键[${KeyEvent.keyCodeToString(keyCode)}]触发了\n[正式使用时,请关闭运营面板上的\"魔方指令\"测试开关]", Toast.LENGTH_SHORT).also {
|
||||
toast.set(it)
|
||||
}.show()
|
||||
return
|
||||
}
|
||||
try {
|
||||
linkedLog.record(mapOf("command" to "clicked: ${ KeyEvent.keyCodeToString(keyCode) }"))
|
||||
executor.handleSingleClick(keyCode)
|
||||
|
||||
Reference in New Issue
Block a user