Thursday, August 5, 2010

Android dips pixel 계산법

* 스크린 사이즈

QVGA(240x320), 120dpi : HTC Tatoo
HVGA(320x480), 160dpi : 안드로원, HTC G1
WVGA(480x800), 240dpi : 넥서스원, 갤럭시A
FWVGA(480x854), 240dpi : 모토로이

* 공식 : pixels = dips * (density / 160)


* 참고 : http://developer.android.com/guide/practices/screens_support.html

Tuesday, August 3, 2010

2010-08-04 도서구매 내역

주문 내역
주 문 일2010년 8월 4일 수요일 11시44분
주문번호001-A916723315
상 태상품준비중
상품가격59,510 원
배 송 료0 원
주문총액59,510 원

상품정보
상품명수량가격
[별도증정] 팔도 비빔면 4입 세트
/ 알라딘 이벤트 
1 개0원
강남몽
황석영 지음 / 창비(창작과비평사)
출고예상시간 : 통상 24 시간 이내
1 개10,800원
도플갱어
주제 사라마구 지음, 김승욱 옮김 / 해냄
출고예상시간 : 통상 24 시간 이내
1 개10,360원
사랑할 때와 죽을 때
에리히 마리아 레마르크 지음, 장희창 옮김 / 민음사
출고예상시간 : 통상 24 시간 이내
1 개12,150원
혁신이란 무엇인가
커티스 칼슨 외 지음, 문일윤 옮김 / 김영사
출고예상시간 : 통상 48 시간 이내
1 개18,400원
Blink (Mass Market Paperback) - The Power of Thinking without Thinking
말콤 글래드웰 지음 / Back Bay Books
출고예상시간 : 통상 24 시간 이내
1 개7,800원

Wednesday, June 9, 2010

Android ODEX Reverse Engineering(DE-ODEX)

우선 ODEX라는 것이 무엇일까?
http://mylifewithandroid.blogspot.com/2009/02/optimized-dex-files.html
위 블로그에 보면 아주 내용이 잘 정리 되어있다. Optimized dex 로써 성능향상을 위해 Hardware에 최적화되어 만들어진 dex file이다. HTC의 단말기들에 있는 app들을 까보면 apk파일과 odex 파일 두개로 이루어져있다.
(그리고 apk file을 압축을 풀어 확인해보면 classes.dex 파일이 존재 하지 않는다.)

ODEX를 classes.dex로 바꿔보자!
1. http://code.google.com/p/smali/downloads/list 사이트에서 smali.jar와 baksmali.jar를 다운로드한다.
1. Android Phone을 Android SDK가 깔려있는 PC에 연결
2. adb pull system system
3. java -jar baksmali.jar -d system/framework -x temp.odex(odex파일 경로)
(참조: http://code.google.com/p/smali/wiki/DeodexInstructions)
이렇게 하면 out이라는 폴더 안에 smali format으로 odex가 풀려있게 된다.
4. java -jar smali.jar -o classes.dex out
이렇게 해서 우리가 원하는 classes.dex 파일이 생성되었다.

APK파일로...
classes.dex가 없는 apk 파일에 추가하여 다시 압축 한 후 http://leehacks.blogspot.com/2010/05/android-apk-reverse-engineering.html 포스팅에서 언급한 apktool로 다시한번 풀어줬다가 apk로 묶어주면 된다.
물론 위 포스팅에서 언급한대로 sign도 해줘야 install이 가능하다.

이렇게 해서 odexed된 app을 deodexing하여 원하는 Android Phone에 Install 할 수 있게 되었다.

Friday, May 14, 2010

Android APK Reverse Engineering

Android apk file을 reverse해서 Resource나 Src를 수정하는 방법이 있다.
http://code.google.com/p/android-apktool/ 에 open source project가 진행중이며, apk를 풀고 다시 빌드하는 것이 가능하다.

1. 해당 사이트에서 apktool을 다운로드하고 기재된 install방법으로 설치한다.
2. apk 디코딩
>apktool d -d name.apk out
3. out 폴더에 있는 source file(dalvik bytecode)과 resource file을 수정한다.
4. apk 빌드
>apktool b -d out
5. 위까지 수행하게 되면 out/dist/out.apk 가 생성되며 이 out.apk를 sign해주면 완료.

Sign방법은 http://developer.android.com/guide/publishing/app-signing.html 를 참고하면 된다.

참고:
1. leehack이 사용한 Sign관련 command.
C:\Sun\SDK\jdk\bin\jarsigner -verbose -keystore E:\Works\Android\Android_2.1_Library\debug.keystore out.apk androiddebugkey
password: android

2. Dalvik Byte 코드에 관련된 문서.
Dalvik opcode list: http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html
Dalvik bytecode?: http://pallergabor.uw.hu/common/understandingdalvikbytecode.pdf

Tuesday, May 11, 2010

넥서스원 개통 관련.

처음엔 안드로이드펍(http://www.androidpub.com/phone_nexusone/319483)에 올라온 글을 보고 정말 KT에서 개통을 해주려고 하는구나 생각이 들었고 아래와 같은 폰스토어의 고객센터 Q&A(http://phonestore.show.co.kr/handler/Customer-Qna)에 올라온 아래와 같은 글을 보고 이젠 개통이 되는구나! 라는 생각이 들었다. 그래서 바로 개통신청!.. 오늘 KT M&S팀으로부터 전화가 왔다.

----------
개인전파인증서 보내셨나요?
아니요. 없이도 개통 된다고 Q&A에 올라와있던데...
구글 직원이세요?
아니요.
아직 개인인증 안된 단말은 개통이 안됩니다.
네......... -_-;;
----------

안된다는데 따진다고 될 것도 아니고 그냥 끊었다. 근데 끊고나서 가만 생각해보니.. 그럼 구글직원은 개통이 된다는 소린가? -_-; Q&A에 올라온건 대체 내부적으로 무슨 이야기가 오가기에 아래와 같은 답변을 한단 말인가?


다른 이야기지만 아무리 좋은 방향으로 길을 잡고 가도 KT는 확실히 SKT에 비해 서비스 부분이 많이 약하다. 대리점에 갈때마다 기분이 팍팍 상하고.. 114에 전화해서 뭐 문의할래도 직원들이 하나같이 뭐 아는게 없고.... KT는 SKT 이기려면 직원교육부터 다시 시켜야 할 듯..

그나저나 내 넥서스원은 언제 개통하나...

Thursday, May 6, 2010

Official Google Blog: Live, from Google I/O!

Official Google Blog: Live, from Google I/O!: "(Cross-posted with the Google Code Blog)

More than 4,000 developers will be joining us at Google I/O on May 19-20, and if we had the capacity, we’d host many more. In order to give the entire developer community a chance to participate live, we're happy to announce that both keynote presentations will be streamed live. To watch, just go to http://www.youtube.com/GoogleDevelopers at the start of the keynotes each day. We recommend watching on a high-speed connection for the best quality.

Here’s the schedule for the keynotes at I/O — it’s also available on our agenda page:
Day 1 Keynote: Wednesday, May 19, 9:00 -10:30am PT
Day 2 Keynote: Thursday, May 20, 8:30-10:00am PT
Both keynote sessions feature exciting new technologies, so be sure to mark your calendars!

Posted by Christine Tsai, Google Developer Team"

안드로이드 : 모토로라 드로이드로 24초만에 푼 큐빅

안드로이드펍 : 모토로라 드로이드로 24초만에 푼 큐빅

[도서구매 내역] 2010년 05월 03일


부족한 기초 지식을 보충하기 위해 구입한 도서 리스트.


미리내
게임 프로그래머를 위한 기초 수학과 물리 구매자40자평쓰기
제우미디어 기획팀 지음
1/1가격 : 15,300원
마일리지 : 160원 (1%)

산호섬
구글드 Googled - 우리가 알던 세상의 종말 구매자40자평쓰기
켄 올레타 지음, 김우열 옮김
1/1가격 : 18,000원
마일리지 : 1,800원 (10%)

한수
수학비타민 플러스 - 전국 초중고생들의 수학 고민을 한 방에 날려주는 박경미의 구매자40자평쓰기
박경미 지음
1/0가격 : 11,700원
마일리지 : 1,170원 (10%)
아하! 물리수학 - 수학에 대한 새로운 느낌의 시작, 2009구매자40자평쓰기
켄 카즈시 지음, 김제완 옮김
1/1가격 : 10,800원
마일리지 : 330원 (3%)

Wednesday, May 5, 2010

글쓰기..

한 2년전 쯤에는 글쓰기를 참 많이 했었다. 한달에 최소 5만원씩을 들여 책을 꾸준히 구입했고 책에 대한 이야기와 세상 돌아가는 이야기들을 많이 적었었다. 핑계라면 핑계지만 회사일에 치이고 출장을 다니고 하다보니 글을 쓸 시간도 없어졌고 책도 구입하지 않으니 생각 할 시간도 줄어만 갔다. 이제는 짧은 글을 쓰려해도 참 많은 생각을 해야하고 한자 한자 글을 써나가는 것 자체도 많이 힘이 든다. 아주 부끄러운 수준이였지만 대학교에 다닐 때는 나름 사진을 찍어 시 한편 적어 인터넷 공간에 올리곤 했던 적도 있는데 귀찮음 때문일까 아니면 앞서말한 핑계 때문일까 지금은 참 어렵다.
어쩌면 또 하나의 핑계이겠지만 공간의 중요함 때문일 수도 있을 것이다. 하루 2시간의 독서시간을 주었던 출퇴근 지하철이란 공간을 사용하지 않게 되어서일 것이다. 남들이 다 하기에 시작했던 싸이월드라는 공간을 사용하지 않게 되었기 때문일 것이다.
알라딘의 내 서재라는 공간에 써 놓은 독후감들을 보며 옛날(?)의 나를 다시한번 떠올리며 이 글을 써 본다. 이 공간이라도 다시 열심히 이용해보자 라는 다짐과 함께..

Tuesday, April 6, 2010

Get gmail data on Android

ContentResolver contentResolver = getContentResolver();
Cursor conversations = contentResolver.query(Uri.parse("content://gmail-ls/conversations/" + "leehack@gmail.com"), null, null, null, null);
conversations.moveToFirst();
for (int a = 0; a < conversations.getCount(); a++) {
String subject = conversations.getString(8);
conversations.moveToNext();
}