Firefly开源社区

标题: 新安卓镜像系统写入速度很慢 [打印本页]

作者: 风往何处去    时间: 2022-11-29 10:13
标题: 新安卓镜像系统写入速度很慢
该系统写入速度极慢,在以下场景中可稳定复现。
1. APP中生成文件(.pdf)保存到/sdcard/xxx/目录下,300KB大小,需要等待一分钟以上。
附:如果在文件管理app中手动复制拷贝一次文件以后,上述问题有很大改善。

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


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

注1:第一版老镜像不存在以上两种问题。
注2:在文件管理app中复制文件,速度还不错,至少不会慢的离谱。
tchip_askquestions

pic.zip

19.53 KB, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1


作者: 风往何处去    时间: 2022-11-29 11:28
[attach]10864[/attach]

image.jpg (182.59 KB, 下载次数: 518)

image.jpg

作者: lsd    时间: 2022-11-30 16:06
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:17
你好!感谢回复!!
1. 同一个app在老固件上正常使用,新固件就出问题了。详细步骤:
  1.         //截取屏幕为图片,将图片格式流转化为pdf文件流
  2.         View dView = getWindow().getDecorView();  dView.setDrawingCacheEnabled(true);    dView.buildDrawingCache();
  3.         PdfDocument doc = new PdfDocument();
  4.         PdfDocument.PageInfo newPage = new PdfDocument.PageInfo.Builder(dView.getWidth(), dView.getHeight(), 1).create();
  5.         PdfDocument.Page page = doc.startPage(newPage);
  6.         dView.draw(page.getCanvas());
  7.         doc.finishPage(page);  

  8.         String filePath ="/sdcard/ActivePassive/TrainReport/test.pdf";  //该路径已创建 且拥有权限
  9.         File pdfFile = new File(filePath);
  10.         if (!pdfFile.exists()){
  11.             try {
  12.                 pdfFile.createNewFile();  //创建文件,测试前该文件不存在,测试过程中该文件成功被创建
  13.             }catch (Exception ignored){
  14.             }
  15.         }
  16.         //写入文件,应该是卡在这里的(文件以一秒几k的速度增长)
  17.         try {
  18.             FileOutputStream fOut = new FileOutputStream(pdfFile);
  19.             doc.writeTo(fOut);
  20.             fOut.flush();
  21.             fOut.close();
  22.         }catch (IOException e){
  23.             LogUtils.e("savePdf...failed" + e.getMessage());
  24.         }
  25.        doc.close();
复制代码

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




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1