안드로원 2.2 프로요로 커펌 성공했습니다.
얘가 아까 걔 맞나요? 너무 빠르네요.
역시 폰은 사양도 중요하지만 소프트웨어의 최적화인 것을 요즘 절실히 느낍니다.

1. 아이폰이 하드웨어 사양으로는 전혀 꿀릴 것 없는 안드로이드 진형 폰들을 눌러줬을 때.
2. 베가가 사양높은 갤럭시보다 두 세배 높은 웹서핑을 속도를 보여줬을 때. 
3. 안드로원이 1.6에서 2.2로 버젼 업 후 새 폰 기분을 느끼게 해 줬을 때.

갤럭시s를 테스트폰으로 사용하다가, 그보다 하드웨어 사양이 떨어진다는 베가를 구입하고
(cpu가 1기가와 800메가의 차이) 별기대없이 사용했다가 훨씬 빠른 인터넷을 접했을때의 쾌감.
 
그리고 이제 서브 폰으로 보험용이 되버리자 조금 마음껏 다뤄줄 수 있게 되었습니다.

휴대폰이 할일을 못해지면 벽돌이 된다고 하죠.
저는 그냥 서버리는 것인줄 알았는데, 무한 부팅이나 무한 에러메시지였더라고요..
그리고 벽돌 몇 번 되면 조금씩 눈에 들어오다가 급 할만해지네요.

안드로이드를 정복하고자 하는 마음가짐으로 루팅과 커펌은 필수라 생각이 들었습니다.
그래서 도전~!

준비할 것을 이렇습니다.
1. sdk 설치 파일
2. 1.6버젼에서 1.5로 다운그레이드를 위한 툴 (버젼을 낮춰야 2.1 이상의 버젼으로 업에 가능합니다.)
3. 안드로원 USB 1.0 드라이버 (다운그레이드를 하면 컴이 폰을 usb로 인식 못하네요.)
4. 버젼업할 안드로이드 버젼의 시스템 파일과 부팅 파일.

정리 잘 해주신 좋은 카페와 블로그는 많이 있고요. 몇 군데만 추천 드립니다.

가장 추천하는 회색인 님의 블로그입니다. 처음부터 끝까지 초보를 위한 설명이 응축되어 자세합니다.
http://blog.naver.com/zzz8798/50094247651

안드로원 라이프라는 안드로원 최고의 카페입니다. 모든 것이 다 있습니다.
http://cafe.naver.com/andronelife.cafe

해외의 안드로원 커펌 사이트입니다. 여기서 최신버젼의 시스템파일과 부팅 파일을 받으면 됩니다.
http://openetna.com/openetna/

sdk 설치 후 --> lg-utils-0.4.2.zip 을 받아 --> KP500-Utils-EN.exe 를 실행하여 1.5로 다운그레이드 합니다.  --> 벽돌된 안드로원을 fastboot으로 부팅하여 (전원 2초 스페이스 연타) --> 폰 연결 전드라이버 연결이 안되어 있으므로 1.0드라이버 설치  --> cmd 모드에서 sdk설치 폴더의 tool파일 내에 --> 해외 커펌 사이트에서 받은 최신의 시스템 파일과 부팅 파일을 넣는다. 그리고 adb상으로 설치.



설치 후 버그잡기
1. 영문 설정에 다행히 한글로 설정이 기본으로 가능합니다. 
2. KSMSReader.apk 로 한글 문자 수신이 가능해집니다.
3.  3G 통신을 위해 APN설정필요합니다. http://mrahn.tistory.com/379 참조 (저는 온리 와이파이므로 패스)

4. 마켓이 접속이 안되네요. 구글계정 동기화와 마켓가능하게 하는 파일입니다. 압축풀지말고 통째로 sd카드에 넣어주세요.  10월버젼압됩니다. 9월 30일버젼만. 재부팅하면 자동설정되고 설치됩니다.
 gapps-mdpi-20100930-signed.zip 구글검색하기
또는 이 링크 http://www.accuratefiles.com/fileinfo/gs11b984ch2i0
설치 방법은 여기 http://cafe.naver.com/androiders.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=431323&social=1

5. 안드로원은 쿼리자판이 생명. dingul hangul 로 마켓에서 검색하세요. 쉬프트 스페이스로 한영전환 간단해집니다.
 
카메라 됩니다. 와이파이됩니다. 노래재생됩니다. 인터넷 잘 됩니다.

오늘은 여기까지..
 


AND

String변수.replaceAll(" ","");
이 아닌,

String변수.replaceAll("\\p{Space} ","");

API 링크
http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html

===========================================
(블루투스 스캐너 작업을 하다 이상한 문자와 띄어쓰기로 시간을 많이 잃었다 )
영어와 숫자 제외하고 지우기
String변수.replaceAll("\\W","");

클래스화 링크 http://cafe.naver.com/javafriends/247

자바 정규식 표현방법 예 http://blog.naver.com/tombjjang/80122756653
AND

안드로이드 '타이틀 없애기'입니다.
안드로이드 앱을 개발할 때 전체화면을 사용하는거죠.

[출처 - 안드로이드펍 커뮤니티]

안드로이드에서 전체화면을 사용하기 위해서는 상태바(Status Bar)와 타이틀바(Title Bar)를 숨겨야 합니다. 숨기는 방법은 여러가지가 존재하는데 그 중 몇가지 방법을 정리하도록 하겠습니다.

=
1. 미리 정의된 Theme 사용하기

-
<activity
android:name=".MyActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >

AndroidManifest.xml 에서 Activity의 Theme를 위와 같이 설정해주면
Status Bar와 Title Bar가 모두 없는 상태가 됩니다.

-
<activity android:name=".MyActivity"            
android:theme="@android:style/Theme.NoTitleBar"  >

이렇게만 한다면 TitleBar만 없는 상태가 됩니다.



=
2. 내가 정의한 Theme 에서 설정하기

-
<item name="windowNoTitle">true</item>
Title Bar만 없는 상태로 만들기
-
<item name="windowFullscreen">true</item>
Status Bar와 Title Bar 모두 없는 상태 만들기


=
3. Java Code에서 설정하기

setTheme(android.R.style.Theme_NoTitleBar_Fullscreen);
+
import android.content.pm.ActivityInfo;
제목표시줄과 상태바 없애기

-
requestWindowFeature(Window.FEATURE_NO_TITLE);
Title Bar 없는 상태로 만들기
-
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);  
Status Bar 없는 상태로 만들기.

Theme 설정과 다른 것은 Fullscreen Flag를 주더라도 Title Bar는 남아있습니다.


=
4. 화면전환 고정시키기 및 또 다른 방법
-
화면전환 이벤트가 발생해도 무시하고 화면을 고정시키는 방법.

Activity 를 상속받은 클래스에서 onCreate() 안에 super.onCreate() 전에 다음 함수를 실행
시켜주면 간단하게 고정이 됩니다.
 setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
-
또는 AndroidManifest.xml 을 수정시하시는 것이 더 좋을거 같습니다.
<activity  android:screenOrientation="landscape"
              android:configChanges="keyboardHidden|orientation">

  
=
TitleBar는 수정하고 싶으시면 ApiDemos/app에 CustomTitle.java를 참고하시면 됩니다.

AND