геолокация в HTML5
История HTML5
Основы геолокации
IP локация
GPS
Wi-fi
Сотовая связь
Поддержка Geolocation API
Защита личной информации
Основные функции API
Обработка ошибок
ПРИМЕР кода
Пример работы
использованные источники
1.39M
Categories: internetinternet programmingprogramming

Геолокация в HTML5

1. геолокация в HTML5

ГЕОЛОКАЦИЯ В HTML5

2. История HTML5

ИСТОРИЯ HTML5
2

3. Основы геолокации

ОСНОВЫ ГЕОЛОКАЦИИ
IP-локация
• Триангуляция:
o Wi-Fi
o Вышки сотовой связи
o GPS
3

4. IP локация

IP ЛОКАЦИЯ
Преимущества
Имеет широкое применение
Выполняется на стороне сервера
Недостатки
Низкая точность
Высокая стоимость
4

5. GPS


Преимущества
Высокая точность
Высокоэффективная в сельской местности
Недостатки
Затруднена работа в помещении
Затруднена работа в многоэтажной застройке
Длительное получение резултатов
5

6. Wi-fi

WI-FI
Приемущества
Высокая точность
Работа внутри помещений
Высокая скорость
Недостатки
Недостаточная точность в сельской местности
6

7. Сотовая связь

СОТОВАЯ СВЯЗЬ
Преимущества
Хорошая точность
Работа внутри помещениий
Высокая скорость
Недостатки
Требуется доступ к устройству с мобильной связью
Низкая точность в сельской местности
7

8. Поддержка Geolocation API

ПОДДЕРЖКА GEOLOCATION API
8

9. Защита личной информации

ЗАЩИТА ЛИЧНОЙ ИНФОРМАЦИИ
9

10. Основные функции API

ОСНОВНЫЕ ФУНКЦИИ API
Проверка поддержки - navigator.geolocation
Запрос позиции – void getCurrentPosition(successCallBack,
[errorCallBack], [Options])
Аттрибуты
enableHighAccuracy
timeout
maximumAge
getCurrentPosition(UpdatePosition, HandleError, {timeout:10000});
function UpdatePosition(position);
function HandleError(error);
10

11. Обработка ошибок

ОБРАБОТКА ОШИБОК
Функция обработки ошибок принимает параметр error. Возможные значения
параметра:
UNKNOW_ERROR (код ошибки 0)
PERMISSION_DENIED (код ошибки 1)
POSITION_UNAVAILABLE (код ошибки 2)
TIMEOUT (код ошибки 3)
11

12. ПРИМЕР кода

ПРИМЕР КОДА
function start()
{
if(navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(UpdateLocation, ErrorHandle)
}
else
{
alert('You browser do not support Geolocation API!');
}
}
function UpdateLocation(position)
{
document.getElementById('longitude').innerHTML = position.coords.longitude;
document.getElementById('latitude').innerHTML = position.coords.latitude;
document.getElementById('accuracy').innerHTML = position.coords.accuracy;
}
function ErrorHandle(error)
{
switch(error.code)
{
case 0:
document.getElementById('error').innerHTML
break;
case 1:
document.getElementById('error').innerHTML
break;
case 2:
document.getElementById('error').innerHTML
break;
case 3:
document.getElementById('error').innerHTML
break;
}
}
= 'Unknown error';
= 'Denied by user';
= 'Cannot retrive position';
= 'Timeout';
12

13. Пример работы

ПРИМЕР РАБОТЫ
13

14. использованные источники

ИСПОЛЬЗОВАННЫЕ ИСТОЧНИКИ
http://evolutionofweb.appspot.com
http://caniuse.com
http://maps.yandex.ru
Лабберс П., Олберс Б., Салим Ф. HTML5 для профессионалов
14
English     Русский Rules