|
@ -311,7 +311,7 @@ public final class USBMonitor { |
|
|
// get detected devices
|
|
|
// get detected devices
|
|
|
final HashMap<String, UsbDevice> deviceList = mUsbManager.getDeviceList(); |
|
|
final HashMap<String, UsbDevice> deviceList = mUsbManager.getDeviceList(); |
|
|
// store those devices info before matching filter xml file
|
|
|
// store those devices info before matching filter xml file
|
|
|
String fileName = Environment.getExternalStorageDirectory()+ "/USBCamera/failed_devices.txt"; |
|
|
String fileName = Environment.getExternalStorageDirectory().getAbsolutePath()+ "/USBCamera/failed_devices.txt"; |
|
|
|
|
|
|
|
|
File logFile = new File(fileName); |
|
|
File logFile = new File(fileName); |
|
|
if(! logFile.exists()) { |
|
|
if(! logFile.exists()) { |
|
@ -323,10 +323,15 @@ public final class USBMonitor { |
|
|
} |
|
|
} |
|
|
FileWriter fw = null; |
|
|
FileWriter fw = null; |
|
|
PrintWriter pw = null; |
|
|
PrintWriter pw = null; |
|
|
final List<UsbDevice> result = new ArrayList<UsbDevice>(); |
|
|
|
|
|
try { |
|
|
try { |
|
|
fw = new FileWriter(logFile, true); |
|
|
fw = new FileWriter(logFile, true); |
|
|
|
|
|
} catch (IOException e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} |
|
|
|
|
|
if(fw != null) { |
|
|
pw = new PrintWriter(fw); |
|
|
pw = new PrintWriter(fw); |
|
|
|
|
|
} |
|
|
|
|
|
final List<UsbDevice> result = new ArrayList<UsbDevice>(); |
|
|
if (deviceList != null) { |
|
|
if (deviceList != null) { |
|
|
if ((filters == null) || filters.isEmpty()) { |
|
|
if ((filters == null) || filters.isEmpty()) { |
|
|
result.addAll(deviceList.values()); |
|
|
result.addAll(deviceList.values()); |
|
@ -346,6 +351,7 @@ public final class USBMonitor { |
|
|
String devSystemVersion = android.os.Build.VERSION.RELEASE; |
|
|
String devSystemVersion = android.os.Build.VERSION.RELEASE; |
|
|
String devClass = String.valueOf(device.getDeviceClass()); |
|
|
String devClass = String.valueOf(device.getDeviceClass()); |
|
|
String subClass = String.valueOf(device.getDeviceSubclass()); |
|
|
String subClass = String.valueOf(device.getDeviceSubclass()); |
|
|
|
|
|
try{ |
|
|
if(pw != null) { |
|
|
if(pw != null) { |
|
|
StringBuilder sb = new StringBuilder(); |
|
|
StringBuilder sb = new StringBuilder(); |
|
|
sb.append(devModel); |
|
|
sb.append(devModel); |
|
@ -357,14 +363,14 @@ public final class USBMonitor { |
|
|
pw.flush(); |
|
|
pw.flush(); |
|
|
fw.flush(); |
|
|
fw.flush(); |
|
|
} |
|
|
} |
|
|
|
|
|
}catch (IOException e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} catch (IOException e) { |
|
|
|
|
|
e.printStackTrace(); |
|
|
|
|
|
} finally { |
|
|
|
|
|
if (pw != null) { |
|
|
if (pw != null) { |
|
|
pw.close(); |
|
|
pw.close(); |
|
|
} |
|
|
} |
|
@ -375,7 +381,6 @@ public final class USBMonitor { |
|
|
e.printStackTrace(); |
|
|
e.printStackTrace(); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
return result; |
|
|
return result; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|