讨论广场 问答详情
自己写一个程序,无法调用hidumper
鸿蒙糕手 2026-04-09 09:21:24
50 评论 分享

如题,想要实现一个监听4G网络是否正常的功能,有什么办法可以调用到hidumper,求助大佬。

50 评论 分享
写回答
全部评论(1)

{
    "jobs": [
        {
            "name": "4g_network_monitor_job",
            "condition": "sys.4g.status=abnormal",
            "cmds": [
                "/system/bin/hidumper --net 1 > /data/log/4g_dump_$(date +%Y%m%d_%H%M%S).log 2>&1",
                "/system/bin/hidumper --ril 1 >> /data/log/4g_dump_$(date +%Y%m%d_%H%M%S).log 2>&1"
            ]
        }
    ],
    "services": [
        {
            "name": "4g_network_monitor",
            "start-mode": "boot",
            "path": [
                "/system/bin/sh",
                "-c",
                "while true; do\n    # 检测 4G/蜂窝网络是否连通\n    PING_RET=$(ping -c 2 -w 3 223.5.5.5 2>/dev/null)\n    if [ $? -eq 0 ]; then\n        NET_STATUS=\"normal\"\n    else\n        NET_STATUS=\"abnormal\"\n    fi\n    # 设置系统属性(触发 job)\n    param set sys.4g.status ${NET_STATUS}\n    sleep 2\ndone"
            ],
            "disabled": 0,
            "sandbox": 0,
            "uid": "root",
            "gid": ["shell", "system"],
            "once": 0,
            "secon": "u:r:su:s0"
        }
    ]
}
先写一个自启动服务,应用层再通过systemParameterEnhance.getSync("sys.4g.status")就可以实现监听4G网络是否正常的功能了

2
2026-04-09 09:32:48