summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkos <mrapitis@ford.com>2017-02-10 11:07:40 -0500
committerMarkos <mrapitis@ford.com>2017-02-10 11:07:40 -0500
commitd373fb7fa58976312e8d2d7b91bbb64eb66675be (patch)
tree84434e605cf1ccc0b07b7d0b688823fe03c085db
parent7159d5b50b8c9435f6bb83e9a5b509862f1e5cc6 (diff)
downloadsdl_android-bugfix/issue_420.tar.gz
Made changes in usb transport for issue 420bugfix/issue_420
-rw-r--r--sdl_android_lib/src/com/smartdevicelink/transport/USBTransport.java12
-rw-r--r--sdl_android_lib/src/com/smartdevicelink/transport/USBTransportConfig.java4
2 files changed, 11 insertions, 5 deletions
diff --git a/sdl_android_lib/src/com/smartdevicelink/transport/USBTransport.java b/sdl_android_lib/src/com/smartdevicelink/transport/USBTransport.java
index f1d221bf3..6ab4ed59c 100644
--- a/sdl_android_lib/src/com/smartdevicelink/transport/USBTransport.java
+++ b/sdl_android_lib/src/com/smartdevicelink/transport/USBTransport.java
@@ -360,6 +360,8 @@ public class USBTransport extends SdlTransport {
}
_disconnecting = true;
+ mConfig.setUsbAccessory(null);
+
final State state = getState();
switch (state) {
case LISTENING:
@@ -456,12 +458,14 @@ public class USBTransport extends SdlTransport {
* Looks for an already connected compatible accessory and connect to it.
*/
private void initializeAccessory() {
- if (!mConfig.getQueryUsbAcc()){
- logI("Query for accessory is disabled.");
+ UsbAccessory acc = mConfig.getUsbAccessory();
+
+ if (!mConfig.getQueryUsbAcc() && acc == null){
+ logI("Query for accessory is disabled and accessory in config was null.");
return;
}
logI("Looking for connected accessories");
- UsbAccessory acc = mConfig.getUsbAccessory();
+
if( acc == null || !isAccessorySupported(acc)){ //Check to see if our config included an accessory and that it is supported. If not, see if there are any other accessories connected.
UsbManager usbManager = getUsbManager();
UsbAccessory[] accessories = usbManager.getAccessoryList();
@@ -487,7 +491,7 @@ public class USBTransport extends SdlTransport {
* @param accessory Accessory to check
* @return true if the accessory is right
*/
- private boolean isAccessorySupported(UsbAccessory accessory) {
+ public static boolean isAccessorySupported(UsbAccessory accessory) {
boolean manufacturerMatches =
ACCESSORY_MANUFACTURER.equals(accessory.getManufacturer());
boolean modelMatches = ACCESSORY_MODEL.equals(accessory.getModel());
diff --git a/sdl_android_lib/src/com/smartdevicelink/transport/USBTransportConfig.java b/sdl_android_lib/src/com/smartdevicelink/transport/USBTransportConfig.java
index 7e6e416ee..4e82807cb 100644
--- a/sdl_android_lib/src/com/smartdevicelink/transport/USBTransportConfig.java
+++ b/sdl_android_lib/src/com/smartdevicelink/transport/USBTransportConfig.java
@@ -44,7 +44,9 @@ public class USBTransportConfig extends BaseTransportConfig {
public UsbAccessory getUsbAccessory () {
return usbAccessory;
}
-
+
+ public void setUsbAccessory (UsbAccessory value) { usbAccessory = value; }
+
public TransportType getTransportType() {
return TransportType.USB;
}