위치를 알아차리는(location-aware) 웹브라우징

브라우저 내에서 스크립트를 통하여 위치를 알아낼 수 있도록 하는 W3C의 API 스펙 제정과 더불어
모질라에서 최근 Built-in Geolocation support for Firefox3.5를 발표했습니다. 이는 앞서 발표한 오페라가
그들 브라우저의 위치 정보 지원을 발표한 것과 유사한 행보입니다.

W3C Draft로 제안된, 지리 API(Geolocation API)는 위치 정보를 얻어오기 위해 장치로부터 제공되는 위도,경도와
같은 정보를 활용할 수 있도록 고도로 추상화된 인터페이스를 제공합니다. 일반적인 지역정보의 소스는 GPS,
지역을 추측할 수 있는 IP 어드레스,  RFID, WiFi , 블루투스 MAC 어드레스, GSM/CDMA 등이 될 수 있습니다.
이처럼 다양한 지역정보의 소스를 API는 인지할 수 있습니다.

다음은 지역정보를 알아내는 개괄적 code 형태를 보여줍니다.

function showMap(position) {
// (position.coords.latitude, position.coords.longitude)를 지도의 중심에 위치하여 보여줍니다.
}
// 현재 위치를 조회 합니다.
navigator.geolocation.getCurrentPosition(showMap);

Draft에는 물론, 프라이버시 보호와 관련한 내용도 명시하고 있습니다.

어떤 식으로 동작하나요?

지역 정보를 이용하도록 디자인된 웹사이트를 방문하면, firefox는 당신의 위치 정보를 공유할 것인지를 묻습니다.
동의하면, firefox는 근처의 무선 AP와 해당 컴퓨터의 ip 어드레스를 수집하고서, 지리정보 서비스 제공자인
google location service에 정보를 전송하여 당신의 위치를 알아냅니다. 그 후 위치 정보를 요청한 웹사이트와
해당 정보를 공유하게 됩니다.
위치 정보 공유에 동의하지 않는다면, firefox는 아무런 행위도 취하지 않습니다.


오페라 역시 그들 브라우저에 구현한 지리 기능에 대해 발표
했습니다.

우리는 오페라에 geolocation 기능을 추가한 것을 기쁘게 생각합니다. 최근 W3C의
The geolocation Working Group에서 geolocation API 명세의 첫 번째 Working Draft를
발표하였고 우리는 그 API를 지원하는 첫번째 제품을 발표했습니다.
API는 웹페이지에서 자바스크립트를 통하여 위치하고 있는 곳의 위도와 경도를 알아내는
데 이용됩니다.

위에 예시한 location-aware 브라우저가 아니라면 구글 Gears의 Geolocation API를 이용할 수 있습니다.

Geolocation API는 다음과 같은 메소드를 이용할 수 있습니다.
getCurrentPosition 메소드를 통하여 현재의 위치를 알아냅니다.
watchPosition 메소드를 통하여 이용자의 시간의 경과에따른 위치 변화를 확인합니다.
lastPosition 프로퍼티를 통하여 이용자의 마지막 위치를 빠르게 조회할 수 있습니다.

Gears 0.5 에서는 좀 더 정확한 위치 판독을 위해 WiFi 안테나의 데이터도 이용할 수 있을거라는군요.

아래는 웹은 아니지만 구글 안드로이드에서 구현된, Layar라 불리는 모바일 Geolocation 어플리케이션의
구동 모습입니다. geolocation-aware 브라우저가 어떤일을 할 수 있을지를 가늠해 볼 만한 영상이라 소개
합니다. 현재는 네델란드 정보만 있지만 전세계로 확대할 예정이라고 합니다.

2009/06/17 17:54 2009/06/17 17:54
Trackback Address:이 글에는 트랙백을 보낼 수 없습니다

IE8 W3C 표준 준수를 기본 모드로 선정하다.

최근 MS의 인터넷 익스플로러 개발팀이 IE8은 표준준수 모드가 기본모드로 동작할 것이라고 발표했습니다.

IE8에서는 W3C의 표준을 준수하는 "Standard Mode" 외에도 IE7처럼 동작하는 "Quirks Mode"를 구비한다고 합니다.
기본적으로 항상 IE8모드로 작동하며, 웹사이트에서 헤더 태그로 IE7모드로 동작할 것을 요구하면 IE7모드로
작동 할 것이라는군요..

이와 관련된 기사는 MS 개발자 블로그에서 볼 수 있는데요..
http://blogs.msdn.com/ie/archive/2008/03/03/microsoft-s-interoperability-principles-and-ie8.aspx

위 링크의 글을 보시면 IE 모드가 왜 바뀌어야 하는지, 그에 따르는 기술적 도전이라든지 앞으로의 방향에 대한
IE 개발팀의 생각을 엿보실 수 있습니다.


이제 IE도 좀 브라우저 다워지는군요.
다른 브라우저에서는 멀쩡히 보이는 레이아웃이 IE6에서는 이상하게 보이고.. 그거 교정하기 위해 무수한
IE6 CSS Hack 같은 방법이 존재 했죠.. Hack을 써도 여전히 미묘하게 차이 나는 부분도 있었구요.

서비의 다락방만 해도 IE6에서는 레이아웃이 깨져 있는 걸요..
(이건 IE6가 png 파일 포맷을 지원 못 했기 때문이지만요..)

IE6와 IE7레이아웃 차이

보이시죠? IE6쪽 라운드 외곽이 미묘하게 밀려있는거..


IE용 Hack을 쓰는 등의 별다른 작업 없이도 타 브라우저와 동일한 레이아웃을 보여주겠다는 것은 분명히 환영할 일이죠.
IE6 전용 태그를 사용한 사이트들은 더는 IE6에서처럼 보이진 않을 거란 게 문제긴 한데 우리나라 웹기획/개발자들도
표준 준수에 대한 인식 확산과 그에 따른 노력을 게을리하지 않고 있으니 크게 문제 되진 않을 거로 생각해요.

2008/03/05 11:11 2008/03/05 11:11
Trackback Address:이 글에는 트랙백을 보낼 수 없습니다