在升级内核到6.18后,scrcpy无法启动窗口。于是使用adb作为临时替代方案。
# 显示
scrcpy解决的第一件事是显示画面,而这可以通过screencap命令来完成:
adb -s localhost:5555 shell screencap -p | magick - sixel:-
这将画面传输到本地并转换为sixel格式在终端模拟器输出。
如果想要视频效果:
while true; do
printf "\033[H"
adb -s localhost:5555 exec-out screencap -p | magick - sixel:-
done
或是使用ffplay:
while true; do
adb -s localhost:5555 exec-out screencap -p
done | ffplay -
# 启动应用
要启动一个应用,可以使用am start,命令格式如下:
adb shell am start -n com.package.name/com.package.name.ActivityName
它接受两个参数,分别是包名和活动名,以/分隔。
可以使用以下命令以列出第三方应用包名:
adb -s localhost:5555 shell pm list packages -3
然后在以下命令输出结果中查找活动名:
adb -s localhost:5555 shell "dumpsys package com.bilibili.azurlane"
该活动名的Action属性应为:android.intent.action.MAIN
于是可以通过以下命令拉起应用:
adb -s localhost:5555 shell am start -n com.bilibili.azurlane/com.manjuu.azurlane.MainActivity