Android 9 如何拷贝文件到U盘

在Android 9中,拷贝文件到U盘是一种常见的操作。通过USB连接U盘到Android设备,可以方便地将文件传输到U盘中。本文将介绍如何在Android 9中拷贝文件到U盘,同时提供相应的代码示例。

USB权限

在Android 9及以上版本中,应用需要获取USB权限才能访问外部USB设备。为了在应用中拷贝文件到U盘,首先需要在AndroidManifest.xml文件中声明USB权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-feature android:name="android.hardware.usb.host" />

USB设备连接

一旦应用被授予了USB权限,就可以在应用中检测USB设备的连接状态。通过USB设备管理器类UsbManager获取已连接的USB设备:

UsbManager usbManager = (UsbManager) getSystemService(Context.USB_SERVICE);
HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList();

for (UsbDevice device : deviceList.values()) {
    // 检查设备是否为U盘
    if (device.getProductName().equals("U盘名称")) {
        // 执行文件拷贝操作
    }
}

文件拷贝

一旦检测到U盘连接成功,就可以进行文件拷贝操作。通过FileInputStream和FileOutputStream实现文件的读取和写入:

File fileToCopy = new File(Environment.getExternalStorageDirectory(), "文件路径");
File usbRoot = new File("/mnt/media_rw/USB/USB_DISK1/");

try {
    FileInputStream fis = new FileInputStream(fileToCopy);
    FileOutputStream fos = new FileOutputStream(usbRoot + "/" + fileToCopy.getName());
    
    byte[] buffer = new byte[1024];
    int length;
    
    while ((length = fis.read(buffer)) > 0) {
        fos.write(buffer, 0, length);
    }
    
    fis.close();
    fos.close();
} catch (IOException e) {
    e.printStackTrace();
}

总结

通过以上步骤,我们可以在Android 9中实现文件拷贝到U盘的功能。首先获取USB权限,然后检测USB设备连接状态,最后进行文件拷贝操作。这样就可以方便地在Android设备和U盘之间传输文件。

erDiagram
    USB设备 -- 连接
    连接 -- 文件拷贝
    文件拷贝 -- 完成

希望本文对您在Android 9中拷贝文件到U盘有所帮助!如果您有任何疑问或建议,欢迎留言反馈。