导航

    全志在线开发者论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 在线文档
    • 社区主页

    H616静态IP设置失败

    H/F/TV Series
    3
    2
    1475
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • zznzzn
      zznzzn LV 6 最后由 编辑

      系统是Android10,大致情况如下:

      1. 接入网线后,使用ifconfig命令查看eth0,确定网线已正确连接;
      2. 打开设置,进入网络设置界面,设置正确的静态IP,使用ifconfig命令,确定eth0的IP改变;
      3. 插拔盒子电源,重启盒子,这时候IP就不是重启前设置的静态IP了
      1 条回复 最后回复 回复 引用 分享 0
      • q1215200171
        budbool LV 9 最后由 编辑

        可能是还没写入文件就已经断电了,导致的数据丢失

        linux内核写入文件的特性:先将内容写入缓存,在io空闲或者一段时间等情况下,再将内容写入磁盘,

        当内容在缓存中时,可以通过 cat 命令查看内容,因此通过 cat 命令能查看到 IP 不能说明已经将内容写入

        在设置完静态IP之后,调用相关方法,马上将内容写入磁盘。

        代码路径:frameworks/base / services/core/java/com/android/server/net/IpConfigStore.java

        public void writeIpConfigurations(String filePath,
                                              ArrayMap<String, IpConfiguration> networks) {
                mWriter.write(filePath, out -> {
                    out.writeInt(IPCONFIG_FILE_VERSION);
                    for(int i = 0; i < networks.size(); i++) {
                        writeConfig(out, networks.keyAt(i), networks.valueAt(i));
                    }
        +            try {
        +                    sync(filePath);
        +            } catch (IOException e) {
        +                    loge("Ipconfig sync error:" + e.toString());
        +            }
                });
            }
        
        +    public void sync(String filepath) throws IOException {
        +        File f = new File(filepath);
        +        RandomAccessFile raf = null;
        +
        +        try {
        +            raf = new RandomAccessFile(f, "r");
        +            FileDescriptor fd = raf.getFD();
        +            fd.sync();
        +
        +        } finally {
        +            if (raf != null) {
        +                raf.close();
        +            }
        +        }
        +    }
        
        1 条回复 最后回复 回复 引用 分享 0
        • 1 / 1
        • First post
          Last post

        Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

        行为准则 | 用户协议 | 隐私权政策