探索一下padavan路由器记录手机熄屏亮屏状态的可行性
本帖最后由 liaohcai 于 2023-2-1 01:33 编辑自从小孩有了手机后,想知道他半夜有没有起来玩手机,什么时候熄屏,什么时候亮屏?
能不能通写一个脚本专门来记录手机的息屏亮屏状态?
什么时候 息屏
什么时候 亮屏
生成以文本形式记录,是否可行?
好多网友都说,没有可行。
我想能不能每隔一段时间去快速ping 手机ip
如果丢包它是熄屏的
这是我的想法
所以写了二个脚本
这是脚本1:
#!/bin/sh
########################
ip=192.168.3.65
##手机ip地址
onlinelog="/tmp/iqoo.log"
##填写保存目录文件名。
########################
d=`date +%F' '%X `
##日期和时间
#############################
f=`find $onlinelog`
if [ "$f" != "$onlinelog" ] ;then
echo [$d] "这是脚本开始运行时间,下一行才是设备的状态" >> $onlinelog
exit
fi
##因为用到两个日期计算需要一个开始日期,否则报错。
#############################
t1=`echo $d`
t2=`echo $(cat $onlinelog |tail -n 1 | cut -d[ -f2 | cut -d] -f1)`
long=$(($(date +%s -d "$t1") - $(date +%s -d "$t2")))
hour=$(( $long/3600))
min=$(( ($long-${hour}*3600)/60 ))
sec=$(( $long-${hour}*3600-${min}*60))
HMS=`echo ${hour}小时${min}分${sec}秒`
a=`ping $ip -c 2 -A`
b=`echo $a |grep -o "100%" `
if [ "$b" == "100%" ] ;then
old=$(tail -n 1 $onlinelog)
if [ "熄屏" == "$(echo $old | grep -o "熄屏")" ] ; then
exit
else
echo [$d] "熄屏" "(连网时长:${HMS})">> $onlinelog
fi
else
old=$(tail -n 1 $onlinelog)
if [ "亮屏" == "$(echo $old | grep -o "亮屏")" ] ; then
exit
else
echo [$d] "亮屏" "(断网时长:${HMS})">> $onlinelog
fi
fi
exit
计划任务最短只有1分钟长,精确到秒,用到循环体
这是脚本2:
#!/bin/sh
while :
do
sh 脚本1
sleep 5
done并赋予脚本2运行权限,然后在SSH终端去运行脚本2,用它来带动脚本1做循环。
这是我用iqoo-ui 手机测试了,生成的记录文件
这是脚本开始运行时间,下一行才是设备的状态
离线 (连网时长:0小时0分1秒)
在线 (断网时长:0小时1分42秒)
离线 (连网时长:0小时0分35秒)
熄屏 (连网时长:0小时9分2秒)
亮屏 (断网时长:0小时0分25秒)
熄屏 (连网时长:0小时0分15秒)
亮屏 (断网时长:0小时0分15秒)
熄屏 (连网时长:0小时0分20秒)
亮屏 (断网时长:0小时0分15秒)
熄屏 (连网时长:0小时0分35秒)
亮屏 (断网时长:0小时1分14秒)
熄屏 (连网时长:0小时0分21秒)
亮屏 (断网时长:0小时2分8秒)
在我看来还是有点可行,不知道其他手机是否可行?
后来又测试了一个多小时,生成的数据太多了,好像没有规律,又好像有点规律!
不可行,因为手机有后台程序,息屏还会联网,路由器检测不了 padavan 的无线设置里有 访客网络,设置一下 开启的时间段,孩子的手机连访客网络的wifi 看流量,如果深夜一段时间一直有流量那就是上网 直接定时交手机就行,我家就是,晚上10.30手机交过来
如果是安卓手机,是可行的。路由器里开启adb server即可。路由器adb连接手机后。当屏幕熄屏时:adb shell dumpsys activity activities | mResumeActivity: 命令返回值为空。反之则说明屏幕已打开。通过脚本循环记录即可。 定时限制他上网,这个可行。或者直接看手机屏幕使用时间。 13062678135 发表于 2023-2-1 08:09
如果是安卓手机,是可行的。路由器里开启adb server即可。路由器adb连接手机后。当屏幕熄屏时:adb shell du ...
好的,我试试 设置屏幕使用时间,简单
孩子不会用流量包?
页:
[1]