zoukankan      html  css  js  c++  java
  • android: 在sdcard上创建的文件在 windows电脑上不显示的问题

    解决方案:

    1. 重启手机;

    2. 在写入文件完成的code后面添加:

    MediaScannerConnection.scanFile(this, new String[] { file.getAbsolutePath() }, null, null);

    3. 每次文件写入完毕后调用下面的方法:

    public static void notifySystemToScan(Context context, String filePath) {
            Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
            File file = new File(filePath);
    
            Uri uri = Uri.fromFile(file);
            intent.setData(uri);
            context.sendBroadcast(intent);
        }

    Why?

    这个问题主要涉及到windows读取android设备盘符及文件传输端口通信的问题。因为系统架构(arm & x86)的差异性,导致无法做到类似于长连接的那种通信机制。总结一句:windows目前还不能实现实时地获取并展示Android系统分区下的文件。

    看到这里依然不太明白,可不可以在通俗一点,答案是当然可以。

    目前大家插上电脑,通常的连接方式都是MTP。一般在插上电脑的时候,手机的状态栏可以供用户选择是以MTP(媒体设备)方式连接还是以PTP(相机)。通常在进行文件操作的时候,大家会使用MTP,而MTP并非传统的磁盘模式,因为手机存储的速度没有那么快,所以google对MTP建立了一个缓存。每次连接电脑其实都是读取的缓存,如果手机上的文件有更新却没有刷新缓存,就会出问题。

    参考链接:
  • 相关阅读:
    26个Jquery使用小技巧
    jQuery之浮动窗口
    Visual Studio 2010 TFS指南
    Python
    HTML5小菜
    记一次重构经历【转载】
    Python学习笔记
    Spring.Net+NHibenate+Asp.Net mvc +ExtJs 系列
    搜索分词实现
    UML概要
  • 原文地址:https://www.cnblogs.com/yongdaimi/p/12462418.html
Copyright © 2011-2022 走看看