安卓系统在手机解锁前(即使已经ROOT)不会对数据解锁,因此必须等到锁屏解锁后才能向内部存储写入数据。
while true; do
if [ "$(getprop sys.boot_completed)" == "1" ]; then
break
fi
sleep 5
done
#From Uperf(Matt Yang)
local test_file="/sdcard/Android/.PERMISSION_TEST"
true >"$test_file"
while [ ! -f "$test_file" ]; do
true >"$test_file"
sleep 1
done
rm "$test_file"
第一段循环检测系统是否Boot完成,第二段代码用于检测是否对内部存储有读写权限。若有读写权限则说明已解锁过屏幕。