缺少Android到Windows USB文件传输文件

缺少Android到Windows USB文件传输文件,android,windows,file,xamarin.android,usb,Android,Windows,File,Xamarin.android,Usb,我最近创建了一个将数据记录到外部存储的应用程序(即myFilePath=Environment.getExternamStorageDirectory().toString()+“mypath/thisCollectionsFolder/myfile.data”)。当我通过airdroid或es文件浏览器查找文件时,我可以在完成录制后找到它。但是,如果我通过usb将手机插入windows PC并导航到mypath,我暂时无法在资源管理器中看到“thisCollectionsFolder”。如果我

我最近创建了一个将数据记录到外部存储的应用程序(即myFilePath=Environment.getExternamStorageDirectory().toString()+“mypath/thisCollectionsFolder/myfile.data”)。当我通过airdroid或es文件浏览器查找文件时,我可以在完成录制后找到它。但是,如果我通过usb将手机插入windows PC并导航到mypath,我暂时无法在资源管理器中看到“thisCollectionsFolder”。如果我让手机“休息”一段时间,我就能看到“thisCollectionFolder”。有时“myfile.data”在“thisCollectionFolder”中可见,有时我必须让手机“休息”一段时间才能看到它

我曾在Nexus 6p和Pixel 2上观察到这种行为,这两款电脑都在两台不同的windows PC上运行android 8。我曾尝试在写入文件后重新启动手机,但这并不能使其在explorer中可见。注意:我的应用程序是使用Xamarin编写的,我使用dotnet System.IO类进行编写

我的问题如下

  • 这是一个已知的问题吗
  • 在我的应用程序中,我可以做些什么来确保文件在写入后立即可见
谢谢

  • 当安卓设备连接到电脑时,电脑不会读取数据 设备的磁盘文件数据。它通过MTP服务映射
  • 媒体数据库中Android数据源提供者的映射: com.android.provider.media/databases/external.db.在此数据库中, 有一个文件表。在此表中,所有记录都将由 将MTP服务发送到PC的文件管理器

  • 同时,我们在PC机上所做的修改也是先对服务器中的文件表进行修改,然后触发系统的磁盘操作

  • 因此,您可以指定文件的路径,然后系统扫描该文件,并在将数据记录到外部存储器后将其同步到PC。使用mtehod
    MediaScannerConnection
    。Android有相应的方法。有关更多详细信息,请参阅