API 參考
Screen Mirror
將裝置螢幕鏡像到 web UI,並將觸控手勢分發回裝置。控制輸入需要 PlainApp 無障礙服務。
型別定義
bash
type ScreenMirrorQuality {
mode: ScreenMirrorMode! # SMOOTH (720p) | HD (1080p)
resolution: Int!
}
type ScreenMirrorVideoCodec {
# Hardware/software video codec name used by the active mirror session.
# Platform-dependent; see PlainApp source for the full list.
}
enum ScreenMirrorMode {
SMOOTH
HD
}
enum ScreenMirrorControlAction {
CLICK
LONG_PRESS
SCROLL
SWIPE
TEXT
BACK
HOME
RECENT
POWER_DIALOG
VOLUME_UP
VOLUME_DOWN
NOTIFICATIONS
QUICK_SETTINGS
LOCK_SCREEN
SCREENSHOT
}
input ScreenMirrorControlInput {
action: ScreenMirrorControlAction!
x: Float
y: Float
x2: Float
y2: Float
text: String
}操作
query
screenMirrorState
當螢幕鏡像工作階段正在執行時傳回 true。
bash
query GetScreenMirrorState {
screenMirrorState
}query
screenMirrorVideoCodec
取得目前/上次鏡像工作階段使用的視訊編碼器。
bash
query GetScreenMirrorVideoCodec {
screenMirrorVideoCodec { name }
}query
screenMirrorControlEnabled
當 PlainApp 無障礙服務已啟用且可以分發手勢時傳回 true。
bash
query GetScreenMirrorControlEnabled {
screenMirrorControlEnabled
}query
screenMirrorQuality
取得目前鏡像品質預設。
bash
query GetScreenMirrorQuality {
screenMirrorQuality { mode resolution }
}mutation
startScreenMirror
啟動螢幕鏡像工作階段。傳入 audio=true 可同時串流傳輸裝置音訊(需要 RECORD_AUDIO 權限)。
bash
mutation StartScreenMirror($audio: Boolean!) {
startScreenMirror(audio: $audio)
}mutation
requestScreenMirrorAudio
請求螢幕鏡像音訊的麥克風權限。如果已授予則傳回 true,否則傳回 false(並觸發權限對話方塊)。
bash
mutation RequestScreenMirrorAudio {
requestScreenMirrorAudio
}mutation
stopScreenMirror
停止活動的螢幕鏡像工作階段。
bash
mutation StopScreenMirror {
stopScreenMirror
}mutation
updateScreenMirrorQuality
切換鏡像品質預設。SMOOTH 目標為 720p,HD 目標為 1080p。
bash
mutation UpdateScreenMirrorQuality($mode: ScreenMirrorMode!) {
updateScreenMirrorQuality(mode: $mode)
}mutation
sendScreenMirrorControl
向裝置分發觸控手勢或按鍵事件。需要啟用 PlainApp 無障礙服務。
bash
mutation SendScreenMirrorControl($input: ScreenMirrorControlInput!) {
sendScreenMirrorControl(input: $input)
}