之前碰到个问题,使用adb shell执行手机上自己写的shell脚本,比如反复点击操作的脚本,
在usb断掉后就会停止执行,使用 & 切换到后台执行还是会停止,
但是logcat > 1.log &
就不会停止
这几天又关注了下这个问题,发现使用./ 的方式启动非原生程序的时候,其父进程是sh
而sh的父进程是adbd,当usb连接断掉的时候,就导致程序退出。
而/system/bin 中的程序不使用./去执行,
直接去执行,如logcat,其父进程是init
区别在这里
恍然大悟