본문 바로가기

4. 테크니컬&팁/4.4.Android

안드로이드 INSTALL_FAILED_DEXOPT 오류. 갑자기 실행이 되지 않았다. [2011-11-01 14:28:47 - LGBooks] ------------------------------ [2011-11-01 14:28:47 - LGBooks] Android Launch! [2011-11-01 14:28:47 - LGBooks] adb is running normally. [2011-11-01 14:28:47 - LGBooks] Performing com.xxxxxxxxxx.activity.IntroActivity activity launch [2011-11-01 14:28:47 - LGBooks] Automatic Target Mode: using device 'xxx' [2011-11-01 14:28:47 - LGBooks] Uploading x.. 더보기
안드로이드 메모리 부족을 호소할때. 넥서스S를 사용중입니다. 여기저기 커스텀 펌웨어와 이것저것 깔아보는 즐거움에 상당히 만족하며 사용하고 있습니다. 그런데 얼마전 MIUI로 OS를 올려서 사용하고 있는데.. 갑작스럽게 저장공간 부족이라는 메시지를 보게 되었습니다. 잉? 별로 설치한 것도 없는데.. 말이죠.. 저장공간을 살펴 보았습니다. 저장공간 1G중 남은양은 1메가 이하.. 후덜덜.. 뭔가 잘못된것을 느끼고.. 여거저기 찾아보니.. Tombstones가 문제가 되고 있다는것을 알았습니다. 루팅후 루트익스플로워 같은 프로그램을 이용하여 /data/tombstones 이라는 폴더에 접근해 보니 특정 파일이 무려 900M이상 차지하고 있더군요.. 지워도 되는지 안되는지 고민을 하다가 여기저기 검색으로 알아보니.. 해당 파일은 디버깅을 위한 그.. 더보기
넥서스S 루팅 아주 쉽게 하기 잘 되는줄 알았으나 잘 안되더군요.. 이글은 무시해 주세요.. ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 넥서스S 루팅관련글을 열심히 읽었는데.. 너무 어렵고 힘들더란.. 문제는 내 노트북은 맥북이고.. 맥os라.. 윈도우 환경에서 작업이 힘든.. vmware는 장치를 잘 인식 못해주고.. 그래서 찾은 아주 쉬운 방법 http://forum.xda-developers.com/showthread.php?t=927838 간단 요약하면 넥서스s를 usb 디버깅 모드로 설정한다. 넥서스S를 끄고 전원+볼륨업 키를 눌러 부트로더 화면으로 들어가 대기한다. pc에서 위의 링크에서 다운로드한 파일을 이용하여 명령어를 날려준다. 알아서 재부팅되고 끝~ 더보기
안드로이드 화면 전환(방향전환)시 onCreate를 다시 호출하는 문제. 화면을 전환하면 이상하게 데이터를 Reload를 하길래 확인해보니 onCreate를 다시 호출하는것으로 판단되더군요. 헐. 문제는 대부분 onCreate에서 데이터의 로딩을 한다는것이죠. 간단하게 아래와 같은 방법으로 reload를 방지할 수 있습니다. AndroidManifest.xml 파일 orientation이 화면 전환 이고.. keyboard가 키보드가 튀어 나올때의 옵션인것 같습니다. "|" 기호가 있는걸 확인하세요. 오.. 이거 옵션좋군요. 더보기
안드로이드 ListView에서 WebView 사용시 클릭 문제 ListView에 WebView를 사용하면 해당 WebView에는 클릭 이벤트가 먹지 않습니다. ㅜㅜ 그래서 아래와 같은 방법을 사용하시면 클릭이벤트가 먹습니다. 헉.. 그래도 먹지 않습니다. focusable이 false로 되어 있으면 되는데.. 실제로는 먹지 않아서 소스에서도 한줄 추가해 주셔야 합니다. WebView webView = rowHolder.getBoardWriterWebView(); webView.setVisibility(View.VISIBLE); webView.setFocusable(false); webView.loadDataWithBaseURL(null, p.getWriter(), "text/html","UTF-8", null); 오.. 이제 되는군요. 이러면 Webview 영역을 .. 더보기
안드로이드 SDK 단축키 이번에 나온 진저브레드 SDK는 UI가 많이 바뀌었습니다. 기본적으로 키보드 부분이 제거되어 보이네요.. 쿼티 키보드와 버튼들이 기본적으로 없으므로 단축키를 알아야 실제로 안드로이드를 구동하기 쉬울것 같아 정리하여 보았습니다. 백버튼 : ESC 키 홈버튼 : Home 키 찾기버튼 : F5 키 설정버튼 : PageUp 키 혹은 F2 키 통화버튼 : F3 키 잠금버튼 : F4 키 혹은 F7 최대화면/취소 : Alt + Enter 키 마우스 트랙볼변경 : F6 기타 더 많은 키가 있을것 같습니다만.. 아직 찾질 못했네요.. 더보기
옵티머스Q - 가상키보드 프로그램 사용법 우선 LG에서 만들어서 기본적으로 포함되어 있는 가상 키보드 어플리케이션의 경우 사용하기 상당히 불편했습니다. 그래서 마켓에 올라오는 키보드 프로그램들을 설치해보았습니다. 유명한것으로 키보드프로, 한손 키보드, 한글키보드, 딩굴 한글 입력기 등 참 많죠.. 그러나 아시다 시피 이런 프로그램들을 설치해서 사용하는것은 문제가 있었습니다. 해당 프로그램들을 기본 입력기로 설정한후 쿼티 키보드를 사용하는 경우 키보드 어플리케이션이 오작동하거나 튕기는 증상이 발생했었죠. 자.. 여기 해결책이 있습니다. 마켓에서 '키보드스위치'를 검색해 보시면 이희진님이 만드신 '키보드스위치 for ROOT USERs' 라는 프로그램이 있습니다. 어플 설명은 아래와 같습니다. 마켓에 있는 딩굴같은 소프트키보드를 설치하면 쿼티자판이.. 더보기
옵티머스Q도 OSP 기능이 됩니다. cyon 홈페이지에서는 옵티머스Q는 OSP에 대한 내용이 없는 상황입니다. 즉, 지원하지 않는것처럼 보입니다. 그러나 아무것도 하지 않고 그냥 프로그램 설치만 하면 정상적으로 OSP를 사용할 수 있습니다. Cyon 홈페이지에서 프로그램을 다운로드 받습니다. 위와 같이 SKT의 SU950 이라는 모델을 선택합니다. 그러면 아래와 같이 OSP라는 프로그램을 다운로드 받을수 있는 부분이 나타납니다. 해당 프로그램을 다운로드 하여 설치합니다. 컴퓨터에 USB를 이용하여 옵티머스Q를 연결한 상태에서 설치한 LG On-Screen Phone 프로그램을 실행합니다. 몇가지 설정창이 나타납니다. - 케이블 방식을 이용하여 연결 - 폰 모델명은 SU950으로 설정 - 비밀번호 입력 (초기 비밀번호는 0000입니다.) 그.. 더보기
안드로이드 - OSMonitor 프로그램 소개 안드로이드를 사용하면서 느끼는 것이지만.. 역시 멀티 테스킹은 장단점이 극명하게 생기는 기술인것 같다. 현재 안드로이드는 멀티 테스킹을 지원하게 되어 있는데 특정 어플리케이션이 CPU를 과도하게 잡아 잡수시는 어의없는 상황을 만들게 된다. 나중엔 OS가 해당 프로세스들을 잡아 주는 기능을 넣어줬으면 한다. 많은분들이 Task Killer류의 프로그램을 사용하는것으로 알고 있는데 가장 유명한 프로그램이 아마도 Advanced Task Killer 라는 프로그램이 아닌가 생각된다. 그런데 사실 해당 프로그램은 개인적으로 상당히 마음에 안들었다. 메모리에 상주하는 프로그램을 보여주는기능과 원하는 어플리케이션을 선택하여 kill할수 있는 기능은 상당히 유용하지만.. 그게 다이다. 어떤 어플리케이션이 얼마나 메모.. 더보기
현재 만들고 있는 안드로이드 프로그램. 개인적으로 안드로이드 프로그램을 공부해 보고 싶어 뭘하나 만들고자 했습니다. 그래도 마켓에 올리고 사람들이 사용해 주길 바라는 개발자의 마음이 있기에.. 정말 중요하면서 간단하지만 정말 필요한게 무엇인지 찾아보던중.. 아.. 안드로이드에서의 지하철 프로그램들은 왜 다들 이모양이냐.. 라는 생각을 하게 되었습니다. 그래서 만들기 시작한 지하철 노선도 프로그램.. 처음 시작을 어떻게 해야 하나 상당히 고민을 하였으나.. 지하철 이미지를 우선 만들고.. 지하철의 위치와 정보를 따로 만들어 해당 이미지위에 좌표를 그리던.. 하자.. 라는 식으로 진행하였습니다. 처음에 Scroll 객체를 이용해서 View를 집어 넣었더니.. 이건뭐.. 안드로이드가 문젠지 단말기가 문젠지.. 정말 버벅거려서.. Scroll객체를 .. 더보기
[개발] 안드로이드 버전 설정 [2010-08-12 10:08:08 - xx] WARNING: Application does not specify an API level requirement! [2010-08-12 10:08:08 - xx] Device API version is 8 (Android 2.2) 기본적으로 프로그램을 실행하면서 위와 같은 Warning을 보게 되었다. 위의 오류는 현재 어플리케이션의 API Level의 요구사항을 설정하지 않았다는 오류 같아 보인다. 현재 안드로이드 2.2의 가상 머신을 돌리고 있는 상황이다. 위와 같은 경고 메시지를 보지 않기 위해 아래와 같이 해결할 수 있다. - AndroidManifest.xml 파일 - 위와 같이 minSdkVersion을 설정할 수 있다. 참고로 위와 같이 4로 .. 더보기
[개발] xml을 이용한 Resource 사용법 res / values 폴더에 xml파일을 만든다. string.xml 파일은 기본으로 제공된다. 다른 파일을 사용하고 싶으면 동일한 폴더에 원하는 이름으로 xml 파일을 만들어 아래와 같은 형식으로 사용할 수 있다. 해당 폴더의 모든 xml 파일은 동일하게 인식한다. 단. 동일한 이름의 name을 사용하는게 발견되면 eclipse 툴에서 오류를 발생시킨다. 지누셩의 프로그램 한글도 영문도 상관없음. 해당 값을 읽어 오는 방법 xml에서 사용하는 방법 "@string/hello" 와 같은 형식을 이용하여 값을 읽어 올수 있다. string.xml 파일이 아니라도 상관없음. value.xml 파일도 동일하게 "@string/app_name"형식으로 읽어온다. java소스에서 사용하는 방법 getString.. 더보기