We had a customer that couldn't get our app to discover their printer connected with usb. In the logs we could se an exception like this:
com.starmicronics.stario10.StarIO10IllegalHostDeviceStateException: Network unavailable. errorCode: NetworkUnavailable
They were connected to wifi so the error didn't make any sense. After a lot of digging we found out that the sdk seems to check that the device is on a isSiteLocalAddress and throws the exception above if it's not. The customer's device where on an enterprise network with an ip like 100.x.x.x.
Describe the solution you'd like
Add more details to the exception so it's easier to see exactly why it's in an illegal state. Also it would be nice if the sdk continued with discovery on the other interfaces instead of throwing an exception and stopping discovery.
We had a customer that couldn't get our app to discover their printer connected with usb. In the logs we could se an exception like this:
com.starmicronics.stario10.StarIO10IllegalHostDeviceStateException: Network unavailable. errorCode: NetworkUnavailable
They were connected to wifi so the error didn't make any sense. After a lot of digging we found out that the sdk seems to check that the device is on a isSiteLocalAddress and throws the exception above if it's not. The customer's device where on an enterprise network with an ip like 100.x.x.x.
Describe the solution you'd like
Add more details to the exception so it's easier to see exactly why it's in an illegal state. Also it would be nice if the sdk continued with discovery on the other interfaces instead of throwing an exception and stopping discovery.