NodeJS ADB SHELL INPUT TEXT结果中缺少字符

xu3bshqb  于 2022-12-22  发布在  Node.js
关注(0)|答案(2)|浏览(156)

有时候,我在向模拟器发送文本时遇到麻烦,它并不总是正确地写入我发送的内容;这就好像它写得太快或读得太快,以至于它没有写完一个单词
例如,如果我写:
猴子77
有时它写得正确,有时它向我展示

或任何奇怪的结果,但不是猴子这个词。
我一直在搜索和记录,没有发现任何涉及这种类型的错误。我尝试过不同的Android模拟器,它们都给予我同样的问题。
我使用的命令是:第一个月
我试过这个命令:adb -s ip:port shell input keyboard text "Monkey77"和我有同样的问题。

ui7jx7zq

ui7jx7zq1#

我遇到了同样的问题,通过逐个字符发送来解决:

echo "$text" | fold -w 1 | while read c; do
    if [ -z $c ]; then
        c="%s"
    fi
    adb shell -n input text $c
done

空格将导致fold的长度为零的行,需要用%s替换,以便为adb shell正确编码。-n标志将防止stdinread混淆。

klr1opcd

klr1opcd2#

我不知道为什么会发生这种情况,当我尝试写入输入文本monkey77时,它工作正常,但是,尝试一下,看看它是否会解决您的问题:

adb -s ip:port shell input text $(echo "Monkey77")

相关问题