private static final String SDCARD_PATH = "/storage/emulated/0/";
private void registeUsbActionReceiver(Context context) {
UsbReceiver usbReceiver = new UsbReceiver();
IntentFilter intentFilter = new IntentFilter();
intentFilter.addDataScheme("file");
intentFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);
context.registerReceiver(usbReceiver, intentFilter);
}
private class UsbReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String uri = intent.getData() != null ? intent.getData().toString() : null;
if (uri==null) {
return;
}
String filePath = uri.substring(7) + File.separator + FILE_NAME_FOR_LOG;
if (filePath.startsWith(SDCARD_PATH)) {
return;
}
Log.i("filePath:" + filePath);
File file = new File(filePath);
if (file.exists()) {
//对usb做动作
}
}
}