Android 뉴스 
출품주제 1 - 안드로이드 웹 브라우저의 개선 또는 대체 (WebKit관련)
작성자
작성일 2008-03-03 (월) 20:25
ㆍ추천: 0  ㆍ조회: 6214      
IP: 221.xxx.120
구글 안드로이드에 설치되어 있는 브라우저는
KDE의 KHTML/KJS -> 애플 Safari의 WebKit (WebCore/JSCore)을 기반으로 만들어졌다.
(참고로 WebKit에 대한 기본적인 이해가 필요한 분들은, 아래의 URL을 참고하기 바랍니다.)
http://www.kandroid.org/board/board.php?board=MobileTech&command=body&no=17
그리고, 구글은 해당 브라우저의 소스를 공개한 상태이다.
구글 WebKit 소스 :
http://android.googlecode.com/files/webkit-522-android-m3-rc20.tar.gz
하지만 위의 소스를 Build하는 것은 그리 간단하지는 않다.
 
그래서 먼저 WebKit을 Linux에서 Build하는 과정을 정리해 봄으로써,
구글 안드로이드의 WebKit에 대한 특징들과 Java API들을 정리해 나가야 할 듯 하다.
 
※ 여기에서 WebKit Linux 빌드에 대해서만 정리해 볼 생각이다.
 
1. 들어가며.


일반적으로 KDE에서 시작된 KHTML/KJS 등은 Qt를 기반으로 하고 있고,
애플 Safari는 Cocoa/Carbon을 기반으로 하고 있다.
하지만, Google Android에서는 이 모든 부분을 사용하지 않는 것 같다.
여기에서는 Google Android와 최대한 근접한 환경에 1차적으로 접근하기 위해
WebKit을 QT나 Cocoa/Carbon을 사용하지 않고 Build 할 것이다.
단, Qt, Cocoa/Carbon 영역을 임시로 대체하기 위해 gtk를 사용할 예정임.
 
2. WebKit Build 과정
 
- Gtk install (이 과정은 각자 알아서 해 보시기 바람.)

- WebKit build Tool인 qmake 설치
ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-4.3.2.tar.gz
tar -xvzf qtopia-core-opensource-src-4.3.2.tar.gz
cd qtopia-core-opensource-src-4.3.2
echo yes | ./configure -fast
make install
환경설정 : ex) csh의 경우, setenv QMAKESPEC <qtopia_install_dir>/mkspecs/default

-  Dependencies 관련 install

libcurl-dev : http://curl.haxx.se/download/curl-7.17.1.tar.gz
libicu-dev : http://ftp.de.debian.org/debian/pool/main/i/icu/icu_3.8.orig.tar.gz
libxslt-dev : ftp://xmlsoft.org/libxml2/libxslt-1.1.21.tar.gz
libsqlite3-dev : http://www.sqlite.org/sqlite-3.5.2.tar.gz
                     (주의 : configure --disable-tcl 사용할 것 )

기타 필요하다고 한다면, libjpeg62-dev , libpng12-dev , gperf , bison , flex version 2.5.33 or later

등을 설치하여야 함.

- WebKit Build
소스 다운로드 : http://nightly.webkit.org/files/trunk/src/WebKit-r28024.tar.bz2
bzip2 -d WebKit-r28024.tar.bz2
tar xvf  WebKit-r28024.tar
cd WebKit-r28024/WebKitTools/Scripts
./build-webkit --gtk
cd ../../WebkitBuild/Release
make
- WebKit 브라우저 실행
WebKitTools/GtkLauncher/GtkLauncher

※ 아래의 그림은 GtkLauncher상에서 http://webkit.org를 실행시킨 결과 화면임.

 


3. 구글 안드로이드 관련 기타 정보
 
현재 구글 안드로이드의 /system/lib directory에는 libwebcore.so (3,229,796)가 존재한다.
그리고 더불어 위의 WebKit과 관련된 Dependencies가 최소 Install 되어 있는 듯하다.
한가지 Check 해 볼 만한 부분은, 여기에 설치된 WebKit 안에 KSVG 존재 유무임.
 
4. 추후 할 일들
 
- 구글 안드로이드 Framework WebKit API 정리
- 구글 안드로이드 libwebcore 분석 및 관련 Dependencies정리
 

덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.