모바일 장치에서 파일을 다운로드하려고합니다. 휴대 전화는 Wi-Fi로 연결되며 경우에 따라 휴대 전화가 변경되어 다른 Wi-Fi에 연결됩니다. 다운로드의 경우, 내가 사용 : 예외없이 차단 된 다운로드
final URLConnection ucon = url.openConnection();
ucon.setReadTimeout(10000);
ucon.setConnectTimeout(10000);
final InputStream inputStream = ucon.getInputStream();
final BufferedInputStream bis = new BufferedInputStream(inputStream);
그리고 bis.available()와 bis.read() 후
바이트 수를> ucon.getContentLength까지 데이터를 얻을 수().Wi-Fi 연결이 변경되었지만 아무 것도 (IO) 예외 (또는 적어도 TimeoutException)가 예상됩니다.
다른 클래스에서는 BroadcastReceiver를 사용하여 네트워크 연결을 확인하고 정상적으로 연결이 끊어 지거나 연결되는 것을 볼 수 있습니다. 따라서 브로드 캐스트 수신기를 사용하여 다운로드를 중지했다가 다시 시작할 수 있습니다.하지만 그렇지 않다고 생각합니다. 그렇게하는 가장 좋은 방법입니다.
이 경우 예외를 얻으시겠습니까?
감사합니다.
다른 솔루션을 원한다고해도이 응답을 보내 주셔서 감사합니다. 요점은 3G 네트워크를 사용하는 경우 다른 3G 안테나에 연결하기 전에 큰 지연이 발생할 수 있으므로 다시 시작하지 않고 다운로드를 계속하는 것입니다. 또한 대역폭을 줄이려고 할 때 동일한 방식으로 Wi-Fi를 관리하기가 더 어려워집니다. <-> 3G 네트워크가 변경됩니다. :/ 마지막 솔루션으로 스트리밍 서버를 만드시겠습니까? – Kikiwa