안드로이드 2.1 이하의 버전에서는 라이브러리 자체의 버그로 인해
네트워크가 느린 경우에서 스트림의 정보를 제대로 읽어오지 못하는 경우가 있는데
이를 방지하기 위해 FlushedInputStream 을 사용합니다.
대충 원리는 이렇습니다.
2.1에서의 InputStream은 네트워크가 이상하면 스트림의 몇개 바이트를 건너 뛰게 되어 있는데,
이렇게 되면 당연히 읽어온 정보가 없거나 잘못된 정보일 것이니
이를 방지하기 위해 건너뛴 바이트만큼을 다시 읽어들여서 씁니다.
[틀린점 있으면 댓글 환영합니다,]
아래는 해당 소스입니다. (출처 - 안드로이드펍 개발정보 게시판)
네트워크가 느린 경우에서 스트림의 정보를 제대로 읽어오지 못하는 경우가 있는데
이를 방지하기 위해 FlushedInputStream 을 사용합니다.
대충 원리는 이렇습니다.
2.1에서의 InputStream은 네트워크가 이상하면 스트림의 몇개 바이트를 건너 뛰게 되어 있는데,
이렇게 되면 당연히 읽어온 정보가 없거나 잘못된 정보일 것이니
이를 방지하기 위해 건너뛴 바이트만큼을 다시 읽어들여서 씁니다.
[틀린점 있으면 댓글 환영합니다,]
아래는 해당 소스입니다. (출처 - 안드로이드펍 개발정보 게시판)
'개발 > Android' 카테고리의 다른 글
다른 앱, 또는 웹과의 커뮤니케이션! - IntentFilter (0) | 2012.03.08 |
---|---|
안드로이드 휴대폰 통신사 정보 받아오기 - TelephonyManager (0) | 2012.03.02 |