프로그래밍 메모장(안드로이드 프로그래밍) |
해당글은 본인이 추후에 잊어버려도 다시 기억할 수 있도록 쓰는 메모장같은 형식의 글입니다.
(강의 글이 아님)
자바의 IO를 이용할 때 MIUI에서의 주의점 |
참고로 이 글은 검증이 되어있지 않습니다.
(여러 사항들을 토대로 제가 추측하는 것입니다.)
입출력 관련 소스를 짤때 자바의 일반 I/O가 아닌 NIO을 채택하여 사용하여 소스를 짰다.
그런데 다른 안드로이드 롬에서는 잘 작동하는 소스가 MIUI 환경에서만 이상한 오류를 뿜어내고 있었다.
바로 MIUI에서만 이렇게 쓰레기가 포함되어 IO가 된다.
(NIO뿐만 아니라 일반 IO도 그랬다.)
혹시나 해서 다른 폰과 환경에서 해보았다.
갤럭시 S3 LTE(API 19 CM 롬)에서는 아주 잘 입출력이 되었다.
혹시 API 21(안드로이드 5.0.2)에서만 저러는 건가 해서
같은 API의 MIUI를 이용했다.
같은 API 19 MIUI가 포팅되어 있는 갤럭시 S3 LTE에서 해보았더니 똑같은 에러가 떴다.
그래서 잠정적으로 MIUI에서 저런 상황이 생긴다고 결론지었다.(MIUI에서 항상 그런것이 아니라 딱 한자리 수(4바이트)의 입출력에서만 저런 현상이 일어났다.)(즉, 2자리수 입출력에서는 저렇지 않았다는 것이다.)
그래서 문득 들었던 생각이 "혹시 MIUI환경에서 입출력을 할 때 자동으로 띄어쓰기가 들어가는게 아닌가?"라는 생각이었다.
그래서 입출력하기 전에 String에 넣고 "trim"을 해주었다.
그러자...
아주 잘 되었다.
결론 |
MIUI가 설치된 기기에서 한자리수 입출력을 완벽히 지원하기 위해서는 trim이 필수인것같다.
'Study > Android' 카테고리의 다른 글
[안드로이드] Bitmap을 불러와서 수정할 때 나는 예외(Immutable bitmap passed to Canvas constructor) (1) | 2017.03.04 |
---|---|
[안드로이드] FragmentTransaction에서 애니메이션을 줄때 주의점 (0) | 2017.02.21 |
[안드로이드] ADB를 무선으로 연결하기(하지만 완전한 무선은 아닌..) (0) | 2017.02.14 |
[안드로이드] 툴바(Toolbar)의 왼쪽에 버튼을 달기 (3) | 2017.02.03 |
[안드로이드] ListView 갱신하기 (0) | 2017.02.03 |