본문 바로가기

안드로이드116

[안드로이드] Framework에 Service 추가하기 Context를 통해서 제공하는 Service는 자신 뿐만 아니라 다른 사람도 사용 할 수 있도록 하겠다는 것을 내포하고 있습니다.(물론 sdk에 포함이 되지 않을 수도 있지요...)그래서 aidl을 작성해서 Remote Service로 작성해야 합니다.그러면 Context의 getSystemService() 메소드를 통해서 MyService를 사용 할 수 있게 만들어 보겠습니다. 1. IMyService를 작성합니다. 2. MyService를 작성합니다.3. MyServiceManager를 작성합니다.4. Context에 MYSERVICE이라는 이름으로 final 타입의 문자열을 정의합니다.5. SystemServer에서 ServiceManager에 MyService를 추가합니다.6. ContextIm.. 2012. 6. 21.
[안드로이드] InputStream ↔ String 변환하기 원문 : http://childeye.tistory.com/171 1. InputStream → String 변환하기 이 경우는 InputStream 클래스가 제공하는 read() 메소드를 이용해서 String으로 변환이 가능합니다.InputStream inputStream = ...; //InputStream은 얻어왔다고 가정 StringBuffer out = new StringBuffer(); byte[] buffer = new byte[4094];int readSize;while ( (readSize = inputStream.read(buffer)) != -1) { out.append(new String(buffer, 0, n));} String result = out.toString(); 2. S.. 2012. 5. 30.
[안드로이드] onDestroy() 언제 호출되나? 링크 : http://blog.naver.com/PostView.nhn?blogId=huewu&logNo=110081631223 현재 기존 안드로이드폰보다 성능이 낮은 환경에서 개발을 하고 있습니다. 간단한 테스트를 하다가 Activity를 실행했더니 검은색 화면만 나와서 이상함을 느꼈습니다. 다시 실행하니 잘 되더군요. 왜 발생할까?? 이유가 멀까?? 그래서 Activity의 생성과 소멸 과정마다 콜백되는 메소드들에 로그를 찍어봤습니다. 로그로는 확신을 들 수 없지만, 실행 했을 때, onCreate() -> onResume()가 호출되고, 종료를 했을 때, onPause()가 호출되었습니다. 그리고 조금 뒤에 onDestroy()가 호출되었지요. 눈으로 확인 하기가 힘들지만, onDestroy() 메.. 2012. 3. 7.
[안드로이드] 안드로이드 빌드 시스템 링크 : http://samse.tistory.com/121 안드로이드의 빌드는 /build/core/main.mk 에 기술되어있습니다. 이 main.mk 파일에 대해서 위의 링크에서 설정이 되고 있습니다. 실력이 상승하면 저도 분석을 해보겠습니다 (__) 2012. 3. 5.
[안드로이드] Android.mk 사용하는 이미 정의된 문법 안드로이드에서 Android.mk 파일에서는 app을 어떻게 빌드할지를 기술합니다. 아래는 packages/apps/DeskClock/Android.mk 파일에 기술된 내용입니다. LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := optional LOCAL_STATIC_JAVA_LIBRARIES := android-support-v13 LOCAL_SRC_FILES := $(call all-java-files-under, src) LOCAL_PACKAGE_NAME := DeskClock LOCAL_OVERRIDES_PACKAGES := AlarmClock LOCAL_SDK_VERSION := current include $(BUI.. 2012. 3. 5.
[안드로이드] Android의 framework에 resource 추가하기 안드로이드의 framework에 style, drawable, attribute 등을 추가하는 방법을 적어봅니다. 안드로이드에서 제공하는 리소스들은 frameworks/base/core/res/res/ 디렉토리에 존재합니다. 그럼 추가 할 리소스를 타입에 맞게 추가를 하면되죠. 그리고 build를 다시하고, api를 업데이트 합니다. 자! 이젠 app을 컴파일하면, 찾을수 없다거나 public 리소스가 아라는 메세지가 보게됩니다. Error: No resource found that matches the given name (at ...... ). Error: Resource is not public. (at ...... ). 리소스를 추가하는 것 만으로는 app에서 사용 할 수가 없나 봅니다. 그렇다면.. 2012. 2. 14.