瑞芯微Rockchip开发者社区
直播中

贾埃罗

7年用户 1676经验值
私信 关注
[问答]

ITX-3588J_Android12镜像系统写入速度很慢如何解决

1.jpg

问题描述及复现步骤:

该系统写入速度极慢,在以下场景中可稳定复现。

1、APP中生成文件(.pdf)保存到/sdcard/xxx/目录下,300KB大小,需要等待一分钟以上。

附:如果在文件管理app中手动复制拷贝一次文件以后,上述问题有很大改善。

2、 dd命令备份某分区时,开始速度还算正常,当备份文件达到300多兆的时候速度明显下降,低于1M/s

1.jpg

使用该dd命令 15个小时,仅备份了50G大小。

注1:第一版老镜像不存在以上两种问题。

注2:在文件管理app中复制文件,速度还不错,至少不会慢的离谱。

1.jpg

回帖(2)

贾永世

2022-12-2 17:40:42

1、没看懂怎么在app中生成文件(.pdf)保存到/sdcard/xxx/目录下,有没有详细的步骤

2、我这同一个固件 ITX-3588J_Android12_HDMI_221101.zip,dd 4G文件dd测试有20+MB/s:

dd if=/dev/block/mmcblk1p15  of=/mnt/media_rw/2C86-CE95/test.txt
8388609+0 records in
8388607+1 records out
4294967295 bytes (4.0GB) copied, 179.308491 seconds, 22.8MB/s

有没有排除过挂载的U盘是不是正常,同一个U盘在PC上拷贝同样大小的文件速度是否正常?
举报

贾埃罗

2022-12-2 17:40:56
你好!感谢回复!!
1. 同一个app在老固件上正常使用,新固件就出问题了。详细步骤:
        //截取屏幕为图片,将图片格式流转化为pdf文件流
        View dView = getWindow().getDecorView();  dView.setDrawingCacheEnabled(true);    dView.buildDrawingCache();
        PdfDocument doc = new PdfDocument();
        PdfDocument.PageInfo newPage = new PdfDocument.PageInfo.Builder(dView.getWidth(), dView.getHeight(), 1).create();
        PdfDocument.Page page = doc.startPage(newPage);
        dView.draw(page.getCanvas());
        doc.finishPage(page);  

        String filePath ="/sdcard/ActivePassive/TrainReport/test.pdf";  //该路径已创建 且拥有权限
        File pdfFile = new File(filePath);
        if (!pdfFile.exists()){
            try {
                pdfFile.createNewFile();  //创建文件,测试前该文件不存在,测试过程中该文件成功被创建
            }catch (Exception ignored){
            }
        }
        //写入文件,应该是卡在这里的(文件以一秒几k的速度增长)
        try {
            FileOutputStream fOut = new FileOutputStream(pdfFile);
            doc.writeTo(fOut);
            fOut.flush();
            fOut.close();
        }catch (IOException e){
            LogUtils.e("savePdf...failed" + e.getMessage());
        }
       doc.close();


2. U盘是闪迪的128G高速存储U盘,平时拷贝速度很快,使用完全没问题。以前的固件也是用这个u盘,相同的操作大概一小时左右就完成。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分