Для того, щоб це працювало на ноутбуці, вам потрібно мати підтримку "у всьому стеку" так:
- Підтримка драйверів - ноутбук повинен мати драйвери апаратного забезпечення, які можуть розпізнавати GPS-пристрій та інтерфейс з ним, незалежно від того, чи це через USB або якийсь інший протокол. Зазвичай драйвери реалізовані в ядрі, але якщо ви знаєте, що у вас є правильні драйвери, реалізація для вас не важлива.
- API інтерфейсу користувача, які використовують драйвери. Незалежно від того, яким є інтерфейс драйвера або як він працює, стек простору користувачів повинен знати про наявність апаратного GPS-пристрою та повинен знати, як отримати доступ до обладнання через інтерфейс програмування. Якщо у вас є драйвери пристрою GPS, ви, ймовірно, також маєте для нього інтерфейс програмування простору користувачів ... але у вас є наступна частина?
- Програми, що використовують API простору користувачів - Ваша клієнтська програма (імовірно, веб-браузер) повинна знати про API драйверів простору користувачів і мати можливість використовувати його з користю для підтримки служб локації.
- Додаток повинен підтримувати протокол локації, сумісний із веб-додатком, який запитує його. Стандарт W3C для геолокації кінцевих точок є API геолокації W3C, тому це хороше місце для початку. В основному браузер повинен розуміти, що коли веб-сервер запитує про місцезнаходження, він досить добре розуміє запит, щоб знати, що йому потрібно отримати дані про геолокацію від користувача.
- Програма повинна інтегрувати драйвер у протокол локації як підтримуваний сервер .
Отже, ви закінчуєте такий стек технологій приблизно таким:
Драйвери ядра <--> Драйвери / бібліотеки користувальницького простору <--> Програми геолокації веб-браузера, характерні для бібліотек користувачів вашого пристрою або рамкового <--> рівня протоколу веб-браузера, який розуміє API запиту геолокації на основі HTTP, наприклад, API геолокації W3C.
Зараз я думаю, що найімовірніше, що вже є в наявності:
- Драйвери ядра та бібліотеки простору користувачів для пристрою повинні бути надані виробником.
- API геолокації W3C тривалий час підтримується в Chrome і Firefox.
Частина, яка, ймовірно, відсутня, - це "резервний сервер геолокації веб-браузера".
Тобто я сумніваюся, що Firefox / Chrome насправді має апаратну підтримку інтеграції GPS-пристроїв. Зараз я знаю лише одну реалізацію: Firefox має підтримку пристроїв GPSd . Отже, якщо ваш пристрій інтегрується з програмним забезпеченням GPSd і ваша операційна система є однією з підтримуваних, це можливо. В іншому випадку, ймовірно, це не так (хоча це може змінюватися, якщо виробник вирішить підтримати весь стек, включаючи плагін браузера).