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)
}