phone: AdbController — единственная точка входа для adb-команд; screen on/off через Канал 1
- AdbController: shell/push/ensureConnected/invalidate; перед каждой командой проверяет соединение (echo ok) и сам поднимает wireless-adb (Mercury -> mDNS -> connect). Мьютекс только на подъём, длинный бутстрап не блокирует команды. - ShizukuProvisioner переведён на AdbController (adb-код вынесен). - Убрана неработающая UI-консоль adb (нужен только программный API). - ScreenControl(sleep) в shared: гашение/пробуждение экрана очков их же Shizuku-UserService (инжект 223/224 как shell), не зависит от Mercury/adb. - VmPhoneController.setScreen + кнопки «Экран очков» на Канале 1. - DebugReceiver: DEBUG_ADB_SHELL (+ SET_DEEP_SUSPEND) как отладочный инструмент. - MercuryController/AdbClient: сопутствующие правки.
This commit is contained in:
@@ -10,7 +10,7 @@ import kotlinx.serialization.Serializable
|
||||
* (настраивается в [VmProtocol]).
|
||||
*
|
||||
* Потоки:
|
||||
* - Phone → Glasses: [TouchEvent], [KeyEvent], [CursorMove], [CursorClick], [LaunchAppCommand], [SetAudioMode], [Shutdown]
|
||||
* - Phone → Glasses: [TouchEvent], [KeyEvent], [CursorMove], [CursorClick], [LaunchAppCommand], [SetAudioMode], [ScreenControl], [Shutdown]
|
||||
* - Glasses → Phone: [GlassesStatus], [AppCrashedEvent], [AppLaunchedAck]
|
||||
* - Двунаправленные: [Ping], [Pong]
|
||||
*/
|
||||
@@ -112,6 +112,18 @@ enum class AudioMode { ON_GLASSES, ON_PHONE }
|
||||
@SerialName("shutdown")
|
||||
data object Shutdown : VmMessage
|
||||
|
||||
/**
|
||||
* Погасить/разбудить экран очков ([sleep] = true — погасить).
|
||||
*
|
||||
* Выполняется на очках их же Shizuku-UserService (инжект `KEYCODE_SLEEP`/`KEYCODE_WAKEUP`
|
||||
* от shell UID), поэтому не зависит ни от Mercury BLE, ни от wireless-adb.
|
||||
*/
|
||||
@Serializable
|
||||
@SerialName("screen_control")
|
||||
data class ScreenControl(
|
||||
val sleep: Boolean,
|
||||
) : VmMessage
|
||||
|
||||
@Serializable
|
||||
@SerialName("get_app_list")
|
||||
data object GetAppList : VmMessage
|
||||
|
||||
Reference in New Issue
Block a user