在android

时间:2016-08-08 13:35:34

标签: android linux debian adb

我试图运行一些脚本来测试为arm-android编译的二进制文件。为了达到这个目的,我在chroot中使用debian,在我的计算机上使用bash脚本,使用android shell和chrooted debian本身。 问题是,运行两次之后,adb挂起,看起来只有这样才能解决这个问题,重启设备。挂起我的意思是运行adb shell,adb push或类似的东西没有效果,adb没有响应。

此外,如果我挂起时adb shell保持打开状态,即使我无法将新shell连接到平板电脑,旧连接仍然有效。我还观察到,当adb停止响应时,android上的某些服务正在被杀死。知道可能导致它的原因以及如何调试它?

我的电脑上运行的脚本:

adb shell "mount -o remount,rw /"
printf "Pushing android.sh to device... "
adb push android.sh /
adb shell "chmod 777 android.sh"
printf "Pushing debian.sh to device... "
adb push debian.sh /data/local/debian/
adb shell "chmod 777 /data/local/debian/debian.sh"
adb shell ./android.sh
printf "Fetching results from device... "
adb pull /data/result.log
cat result.log

android.sh:

mount -o bind /proc /data/local/debian/proc
mount -o bind /sys /data/local/debian/sys
mount -o bind /dev /data/local/debian/dev
mount -o bind /dev/pts /data/local/debian/dev/pts
mount -o remount,exec,dev,suid /data
mount -o bind /system /data/local/debian/system
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH
export HOME=/root
export SHELL=/bin/bash
chroot /data/local/debian ./debian.sh

和debian.sh:

cd /path-with-binaries
touch result.log
ctest my-tests > result.log
exit

0 个答案:

没有答案