byte[]를 String으로 byte[] => String String s = new String(b, "UTF_8"); // b => byte[] String => byte[] String str = "한글"; byte[] bin = str.getBytes( "UTF-8" ); 넘길/넘어온 데이터에 따라 'UTF-8' or 'EUC-KR'을 넣어주면 된다. 이건 검색하면 쉽게 찾을 수 있다. 근데... 만약에 byte[]를 String으로 변환하는 과정에서 byte[]의 크기가 무지막지하게 크다면, 위의 방법은 그래 좋은 방법이 아니다. 사실상 텍스트 데이터는 그리 크지 않기에 그냥 처리해 위와 같이 처리하면 웬만하면 다 처리할 수 있다. 다시 하지만, 큰 데이터를 안 다룰 경우가 없지 않다는 것이 ..
소스코드 ByteBuffer, IntBuffer, FloatBuffer, DoubleBuffer, ShortBuffer, LongBuffer, CharBuffer.. 등에는 flip, compact, clear등에 함수가 있다. 근데, 이 flip, compact, clear는 도대체가 뭐 하는 녀석인지.. 알기가 어렵다. 답은 개발자 식으로 말하면 Producer-Consumer방식을 사용하기 위해 있는 것이다. 이 Buffer들은 읽기모드와 쓰기모드가 있다. 현재상태에 따라 해야하는 작업이 정해진다. 읽기모드일 경우는 말 그대로 읽기명령(get함수등)등을 써야 하며, 쓰기모드에서는 쓰기명령(put함수 등)으로 Buffer에 작업을 하면 된다. 예로 이해하기 아주 간단한 예를 들어보겠다. Buffer에..
1. 안드로이드 http 다운로드하기( HttpURLConnection + SSL ) 2. 안드로이드 HttpUrlConnection 서버로 전송 #1 (기본편, x-www-form-urlencoded ) 3. 안드로이드 HttpUrlConnection 서버로 전송 #2 ( multipart/form-data ) multipart/form-data 1편에서 application/x-www-form-urlencoded방식을 설명했다. 이 방식의 가장 큰 문제 파일을 전송할 수 없다는 것이다. 파일을 전송하기위해서는multipart/form-data방식을 써야 한다. 이 방식의 전송데이터는 다음과 같이 생겼다. POST /test HTTP/1.1 Host: foo.example Content-Type: mu..
1. 안드로이드 http 다운로드하기( HttpURLConnection + SSL ) 2. 안드로이드 HttpUrlConnection 서버로 전송 #1 (기본편, x-www-form-urlencoded ) 3. 안드로이드 HttpUrlConnection 서버로 전송 #2 ( multipart/form-data ) 서버에 데이터를 전송하려면 기본적으로 "application/x-www-form-urlencoded" 방식을 쓴다. x-www-form-urlencoded의 구조는 다음과 같이 생겼다. 이름2=값1&이름2=값2&이름3=값3&이름4=값4 이름과 값이 한쌍을 이루며, 쌍을 분리하는 것은 '&', 이름과 값을 분리하는 것은 '='로 구분되어지게 된다. 여기서 이름과 값 모두 UrlEncoded라는 형..
html 화면상에 그림을 넣으려면 다음과 같이 img태그를 쓴다. 이 것의 크기를 지정하려면 속성으로 다음과 같이 픽셀값으로 지정을 하든지 %를 이용하여 지정할 수 있다. 픽셀로 지정한 경우 %로 지정한 경우 픽셀값으로 지정하면 해당 크기로 출력이 되고, "%"를 사용할 경우 상위요소의 크기에 따른 비율로 레이아웃이 잡힌다. 이 것은 css로 지정해도 동일하게 동작을 한다. 두번째 그림의 경우 height가 상위요소의 높이의 %값이므로 이미지가 찌그러지게 된다. 그림을 상위요소의 폭에 딱 맞추고 그림의 비율을 유지하면서 그리려면 다음과 같이 height를 지정하지 않으면 브라우저는 알아서 비율을 맞추게 된다. 레이아웃을 잡아야 한다. 하지만 우리는 레이아웃을 미리 잡아 두기위해 높이도 미리 정해줘야 할 ..
1. 안드로이드 http 다운로드하기( HttpURLConnection + SSL ) 2. 안드로이드 HttpUrlConnection 서버로 전송 #1 (기본편, x-www-form-urlencoded ) 3. 안드로이드 HttpUrlConnection 서버로 전송 #2 ( multipart/form-data ) 목차 1. 서론 2. 준비사항 3. 파일로 다운로드 4. Self-Signed 인증서 5. String으로 받기 서론 안드로이드에서 web의 파일 등을 다운로드하려면 DownloadManager를 쓰면 쉽게 되지만 문제는 알림이 뜨게 된다. 여러 개를 다운로드하면 정신이 없을 정도다. 그냥 프로그램상에서 받았으면 할 경우가 있는 데, 이 때 사용할 것이 바로 HttpURLConnection이다...
최근 12월 들어서 사용자의 클릭 수가 폭증을 했다. 평소에는 하루에 클릭 1번 많아야 2번되는 방문자도 별로없는...ㅠㅠ 비인기 블로그지만(글이 두서 없긴하다) 그래도 방문자가 있기는 있는...(에효 글 200개에 일방문자 200이라니..) 애드센스 관리창에서 보니 방문자수는 변하지 않았는 데, 클릭수가 평소보다 2~10배 늘어난 것이다. (물론 수익도 같이..) 사람들이 "내 아름다운 글에 마법이 갑자기 걸렸나? 아니면 코로나 때문에 머리쪽에 상해를 입었나?"라는 생각으로 확인을 해 보기로 했다. 이런... 전면광고가 수시로 뜬다. 특히 검색엔진에 링크된 글로 들어오는 즉시 전면광고가 보일 때도 있고, 다른 글로 이동하거나 다운로드 링크를 클릭했을 때마저 전면광고가 뜨는 것이었다. 완전히 내 블로그가..
이제 화면 내부만이 아닌 화면의 근처에 있는 이미지를 미리 로드하는 코드를 추가하도록 해보자. 트래픽과 시스템리소스는 조금 더 먹겠지만, 사용자에게 가장 깔끔하게 보여지는 것이 더 중요할 것이다. 이왕하는 김에 다른 내용도 추가한다. 할 일 1. 스크롤시 화면근처에 있는 이미지를 로드한다. 2. 이미지가 로드되면 화면 내부(화면에 조금이라도 겹친다면)일 경우 fade-in처리를 하지만, 화면 바깥이라면 그냥 그린다. 3. (추가로) 기본 이미지를 미리 깔아 놓고, 로드된 이미지를 위에 덮어 그리기를 한다.(로딩중 같은 이미지에 적용하면 좋을 듯하다) 어디까지 로드할 것인가? 필자가 테스트한 바로는 현재 보고있는 화면크기에서 위로 한화면, 아래로 한화면이 가장 적당한 듯 했다. 마우스로 스크롤하기도 하지만..
#1편에서 언급했듯이 img태그를 쓰지 못하는 경우가 있다. 특히 img태그를 쓰지 않고 이미지를 화면에 표시하는 방법을 쓰는 경우가 있다. 예를 들면 div태그에 background-image를 이용하여 표시하는 경우가 이에 해당한다. 당연히 이 div태그에는 loading속성은 존재하지 않기에(css도 없는 듯) Lazy-Loading은 javascript로 구현해 낼 수 밖에 없다. 이로인해 img태그의 loading속성은 무용지물이 되지만, 그래도 javascript로 만들면 제어가 가능하기에 오히려 장점도 많으니 이 방법을 이용해 보자. 시나리오는 다음과 같다. [사용자가 "스크롤"할 때마다~] 1. 페이지내의 "lazy"가 있는 모든 요소를 가지고 온다. 이 때 이 요소에는 data-imgsr..
이미지를 필요할 때만 로딩하는 방법이 있다. 브라우저는 HTML을 전송받으면 다음으로 이미지를 서버에 요청하게 되는 데, 이 때 HTML파일이 이미지가 100개 있다면, 브라우저는 100개를 모두 서버에 요청하게 된다. 하지만 이 100개의 이미지를 사용자가 다 볼일은 없다. 물론 다 볼 수도 있지만, 보이지 않는 이미지도 있을 것이고, 페이지가 길면 길수록 사용자가 보지 않는 이미지는 더 많아 질 것이다. 이미지의 전송량을 줄이는 것은 서버의 부담을 줄이고, 네트워크 전송량을 줄이는 데 아주 효과적이다. 실제 긴 화면상의 이미지중에 70~80%는 사용자가 보지않고 다른 페이지로 이동을 하는 경우가 대부분이다. 이말은 네트워크사용량을 20% 수준으로 줄일 수 있다는 말이 되고, 서버도 쓸데없이 자원을 허..
책상 서랍을 뒤지다가 언제 산지도 기억이 않나는 블루투스 동글이 있었다. (주)유니콘 정보시스템에서 출시한 BlueXen이라는 동글이다. 모델명은 XU-400B 예전에 블루투스를 지원하지 않는 PC에 블루투스로 연결하여 음악을 들으려고 샀던 것인데, 몇 번이고 버리려다 그냥 서랍속에 쳐박에 둔 것을 꺼내 보았다. 음.. Bluetooth 4.0 +EDR을 지원하는 모델이고.. 칩셋을 보니 CSR8510을 사용하는 것이 있다.. 잠깐... CSR8510 모델명이 뭔가 Apt-X를 지원할 것 같은 느낌이 들어 구글에 모델명을 쳐보니.. Apt-x를 지원하는 칩이었다. 그러면 뭐하나... Window7까지 지원하는 모델이고 Apt-X는 드라이버를 깔아야 될텐데.. 그냥.. Window 10에 슬쩍 꼽아 봤다...
화별 화 내용 127화 헌터협회 감시과의 우진철이 이 게이트에 들어서게 되고, 헌터스 길드에 도움을 요청한다. 압도적인 힘의 시스템 설계자, 그림자병사의 도움을 받을 수 없는 성진우는 점점 싸움을 리드하기 시작한다. 결국 설계자를 잡은 성진우 128화 성진우는 꿈을 꾸 듯 숨어있던 기억을 살리게 되고, 꿈과 같은 상황에서 이전의 전쟁을 보게 된다. 은빛 병사와 마수의 싸움, 은빛 병사의 우세를 넘어 승리의 상황에서 나타난 "그림자군주" 판세를 완전히 그림자군주의 승리로 가고 있는 데... 던전에 도착한 헌터스 길드.. 129화 헌터스길드는 시스템설계자와 싸움이 시작되지만, 실력차이가.. 따라서 성진우를 깨우는 것에 전력을 다하는 헌터스길드... 성진우의 기억의 꿈은 종료되고.. 130화 자신의 실체를 반..
- Total
- Today
- Yesterday
- 안드로이드
- 공유 컨텍스트
- 사용료
- 전기세
- 텍스처
- 적금
- 전기료
- 컴퓨트셰이더
- Android
- OpenGLes
- 블로그
- OpenGL ES
- gpgpu
- 재테크
- 컴퓨트쉐이더
- 애드센스
- 에어콘
- TTS
- choreographer
- texture
- 경제보복
- 아끼는 법
- 애드핏
- 티스토리
- 에어컨
- 금리
- 재태크
- 전기요금
- ComputeShader
- 예금
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |