Doxygen 은 소스코드 문서 생성툴이다. java, c++, python 등 여러 언어를 지원한다. 안드로이드 PDK 사이트를 가보면 일부 네이티브 C/C++ 소스에 대한 javadoc 스타일의 API 문서를 볼 수 있다. 예를 들어 CameraHardwareInterface.h. 이 문서가 바로 doxygen이라는 툴로 생성된 것이다.
나 처럼 주로 자바로만 먹고살아서 C/C++ 소스 분석에 애를 먹는 사람들한테는, 이 API 문서가 조금이나마 도움이 될 수가 있다. 이렇게 예쁘게 다이어그램도 그려주고 말이다.
그러나 안드로이드는 아쉽게도 전체 C/C++ 소스에 대한 API 문서는 제공하지 않는다. 이유는 잘 모르겠다.
목마른 놈이 우물판다고 그래서 내가 직접 framework에 속한 native 소스에 대해 doxygen을 돌려봤다. 다행히 큰 문제 없이 문서가 잘 만들어진다. 생각보다 어렵지 않다.
나 처럼 주로 자바로만 먹고살아서 C/C++ 소스 분석에 애를 먹는 사람들한테는, 이 API 문서가 조금이나마 도움이 될 수가 있다. 이렇게 예쁘게 다이어그램도 그려주고 말이다.
그러나 안드로이드는 아쉽게도 전체 C/C++ 소스에 대한 API 문서는 제공하지 않는다. 이유는 잘 모르겠다.
목마른 놈이 우물판다고 그래서 내가 직접 framework에 속한 native 소스에 대해 doxygen을 돌려봤다. 다행히 큰 문제 없이 문서가 잘 만들어진다. 생각보다 어렵지 않다.
- 먼저 안드로이드 git에서 소스를 다운받아 놓는다. mydroid에 다운받았다고 하자.
- doxygen 사이트에서 doxygen을 다운받아 설치한다. 윈도 버전 있다.
- Doxywizard를 실행한다.
- Wizard 탭, Expert 탭에서 여러가지 설정을 한다. 처음에는 Wizard탭, 숙달되면 Expert 탭 이용.
- 소스 폴더 선택. 예를들어 mydroid/frameworks 선택. mydroid 전체를 선택하면 먹통될수도...
- scan recursively 옵션 체크
- 소스 종류는 .h,.c,.cpp 선택
- html은 하위 폴더로 나누어서 생성되도록
- 클래스 다이어그램 생성되도록
- public이 아닌 함수도 나오도록 설정하면 소스 분석에 도움됨
- 그외 적당히 옵션 설정
- 설정 마치고 Run 탭에서 run 실행한다.
'Android' 카테고리의 다른 글
[안드로이드] 시스템 분석을 위한 쉘 명령어 (10) | 2010.03.19 |
---|---|
[안드로이드] 프로세스별 메모리 사용량 분석 (5) | 2010.03.19 |
[안드로이드] 애플리케이션 main 쓰레드 초기 작업 (1) | 2010.03.18 |
[안드로이드] UI 쓰레드와 Handler (0) | 2010.03.17 |
[안드로이드] Event 처리 메커니즘 (2) | 2010.03.17 |