본문 바로가기

개발 개발

[Java] synchronized 란? 출처 : http://interwater.tistory.com/13 Java 하며서 이론적으로 자주 마주 치는 놈이 이것인데.... 이건 간단히 말하면 db 락의 개념으로 보면 된다. synchronized 이게 붙어 있는 매쏘드는 그 매쏘드의 작업이 끝나기 전에 다른 놈이 사용을 못하게 하는 것이지.. 엇 자 그런데 만약에 synchronized 가 붙은 method 가 있는 클래스를 new 를 통해서 생성해서 각각 쓰면 이게 동기화가 될까? ---------------------------------- ex) class A{ synchronized test(){ } } class B{ new A().test(); new A().test(); } -------------------------------.. 더보기
FTS4BT Bluetooth Analyzer 사용하기 http://blog.naver.com/netxy/110017611465 더보기
CTS 정리 출처 : http://csjung.tistory.com/entry/CTS-%EC%A0%95%EB%A6%AC 정의 CTS(Compatiblity Test Suite)는 안드로이드 디바이스의 호환성을 테스트 하는 도구입니다. 안드로이드 표준 SDK에서 요구하는 API들이 존재하는지, 그리고 정상적으로 동작하는지 확인하는 것입니다. CTS를 하는 이유는 개발자가 표준 SDK의 개발 가이드에 따라서 만든 응용 프로그램들이, CTS 인증을 받은 안드로이드 호환 디바이스에서 정상적으로 동작함을 보장하기 위함입니다. 따라서 CTS의 통과는 안드로이드 마켓에 접속하기 위한 가장 기본적인 요건입니다.. 그리고 구글의 정책상 마켓 프로그램 뿐 아니라 GMS(Google Mobile Service)라고 불리우는 다양한 어플.. 더보기
임의로 Call stack(콜스택) 찍기 방법 1. Exception ex 와 같이 객체를 하나 만들고, ex.printStackTrace() 하면 해당 위치의 Call stack을 볼 수 있습니다. 방법 2. StringBuffer stacktrace = new StringBuffer();StackTraceElement[] stackTrace = new Exception().getStackTrace(); for(int x=0; x RefBase 소스에서 incStrong() -> AudioFlinger 소스에서 onFirstRef() 이렇게 호출된 것을 볼 수 있습니다. 더보기
PDK JNI 로그 log 나오게 하기 android_bluetooth_HeadsetBase.cpp 파일에서 로그좀 볼려는데 죽어도 안나온다. 결국 실제 조건을 확인하기 위해서 풀컴파일후 해당파일 터치후 컴파일 옵션에 임시파일 보존 속성 추가후 다시 컴파일 mydroid/build/core/config.mk 에 --save-temps 추가 COMMON_GLOBAL_CFLAGS:= -DANDROID -fmessage-length=0 -W --save-temps -Wall -Wno-unused -Winit-self -Wpointer-arith 원래 파일의 하기 부분 체크시 if (rc < 0) { if (errno == EBUSY) { LOGI("read() error %s (%d): repeating read()...", strerror(err.. 더보기
블루투스 스펙 2012.12.5 일 현재 Adopted Bluetooth Core Specifications Specification Adopted Date Notes Core Version 4.0 30 June 2010 Core Version 3.0 + HS 21 April 2009 Core Specification Addendum (CSA) 1 26 June 2008 Applicable to v2.0 + EDR and v2.1 + EDR Core Version 2.1 + EDR 26 July 2007 Volume 4: HCI Transports 01 January 2006 Core Version 2.0 + EDR 04 November 2004 To the top Adopted Bluetooth Profiles, Services, Protoc.. 더보기
[안드로이드] 네이티브 어플리케이션 설치 출처: http://whitetiger0714.tistory.com/29 1. 네이티브 어플리케이션 설치 방법네이티브 애플리케이션(Native Application)이란? 내장 애플리케이션(Built-in Application) 또는 시스템 애플리케이션(System Application) 등으로 불림 주로 제조사에서 개발되어, 디바이스(or 에뮬레이터)에 내장된 상태로 제공됨 Contacts, Browser, Phone, Camera, Email, Gallery 등(전체 목록은 안드로이드 풀소스의 packages 디렉토리 참조) 디바이스의 /system/app에 설치됨 : ex) /system/app/Contacts.apk 보통 안드로이드 full 소스 빌드시 함께 빌드되며 이 과정에서 별도의 인증서로 .. 더보기
Android build system - makefile 기본 빌드 과정 Product설정파일을 통해 환경변수를 설정하여 선택적으로 빌드가능 PRODUCT_NAME : 제품명 PRODUCT_DEVICE : 디바이스명 PRODUCT_LOCALE : 지역정보 PRODUCT_PACKAGE_OVERLAY : 대체될 resource가 있는 Path PRODUCT_PROPERTY_OVERRIDES : 추가될 system property 항목이며 /system/build.prop에 저장됨. PRODUCT_PACKAGES : 기본적으로 설치될 app 목록 전체 과정을 간략히 설명하면, TARGET_BUILD_VARIANT에 따라서 System Property와 설치될 모듈을 결정합니다. 그 과정을 Makefile을 따라가면서 확인해 보겠습니다. 시작은 open_src폴더 아래 Makefil.. 더보기