데이터베이스 웬만하면 사용하지 않고 애플리케이션의 요구사항을 적절히 파악하여 사용 여부를 결정한다. (XML이 빠름)
droidAtScreen 폰 화면 불러오는 파일
안드로이드 환경설정관리
android:dependency 다른 환경설정의 설정여부에 따라 활성화 비활성화 시킴
stream : 흐름
가장 먼저 source target 파악이 필요
통신을 위해서는 스트림(흐름)을 만들어야하고 스트림은 생성자를 통해 생성한다.
데이터의 종류에 따라서 소스, 타겟 클래스를 결정 지어야해야한다.
바이트 데이터는 1바이트씩 (InputStream / OutputStream)
캐릭터 데이터는 2바이트씩 (Reader / Writer)
바이트 파일 데이터에 최적화된 클래스는 FileInput/OutputStream
메모리에 존재하는 데이터에 최적화 된 클래스는 ByteArrayInput/OutputStream
스트림으로 불러온 데이터를 버퍼에 쌓아 두는 클래스는 BufferedInput/OutPutStream
캐릭터 파일 데이터에 최적화된 클래스는 FileReader/Writer
.
.
.
체이닝 = 여러 입출력 스트림을 연결
[zip 파일을 jar로 바꾸기]
FileInput/OutputStream으로 불러들이고 쓸경우 : 20메가 쓰는데 2분 넘게 걸렸음
BufferedInputOutputStream으로 체이닝 걸고 쓸 경우 : 20메가 쓰는데 1초 걸렸음
---BufferedInputStream(new FileInputstream());
버퍼 출력은 flush 해주는 센스
한쪽만 체이닝을 걸 경우 병목현상이 생김
네트워크 통신에서는 쓰레드로 분산하여 보내는것이 빠름
데이터를 읽는 레벨에 따라 2가지로 나뉨
로우레벨 스트림 = 커널단까지 내려가서 입출력 처리
하이레벨 스트림 = 직접적인 파일 입출력 기능이 없음 (BufferedReader 등등)
sdcard 위치는 기기마다 다르기 때문에 경로를 하드코딩하면 안된다.
'기타 > DMZ' 카테고리의 다른 글
2011.09.30 Tacademy 안드로이드 10일차 메모 (0) | 2011.09.30 |
---|---|
2011.09.28 Tacademy 안드로이드 8일차 메모 (0) | 2011.09.28 |
2011.09.26 Tacademy 안드로이드 6일차 메모 (0) | 2011.09.27 |
2011.09.24 KOSR 악성코드 세미나 메모 (0) | 2011.09.24 |
2011.09.23 Tacademy 안드로이드 5일차 메모 (0) | 2011.09.24 |