Геолокация Google Gears на Java / C

Я пытаюсь найти физическое местоположение компьютера, используя такой язык, как Java / C. Единственным хорошим точным решением, по-видимому, является Google Gears (http://code.google.com/apis/gears/api_geolocation.html). У MaxMind есть API, но он использует только IP-адреса и кажется очень неточным (мне нужен точный адрес, когда это возможно).

В JavaScript есть множество примеров, но для этого необходимо установить программное обеспечение Gears. Думаю, мне нужно:

  • IP-адрес (легко)
  • Информация о беспроводной / сотовой сети
  • Затем создайте запрос JSON, например: code.google.com/apis/gears/geolocation_network_protocol.html

Я думаю, что единственная трудность - это получить информацию о беспроводной / сотовой сети. Может кто-нибудь указать несколько указателей? Я посмотрел на это - nicomsoft.com/wifiman/ - но 600 долларов - это довольно много, к тому же я фактически не знаю ни одного из языков, для которых он создан (C / C ++, Delphi, VB, VB.NET, C #) , хотя я хочу учиться (я знаю Java).

Спасибо! (Извините за то, что не привязываете ссылки - не разрешено, потому что я новый участник.)


person Amy B    schedule 20.12.2009    source источник
comment
Для работы на мобильном устройстве или на сервере?   -  person skaffman    schedule 20.12.2009
comment
Для любого нормального ноута. Он будет установлен на клиентском компьютере.   -  person Amy B    schedule 20.12.2009


Ответы (2)


Для API геолокации вам потребуются MAC-адрес, SSID и мощность сигнала ближайших маршрутизаторов Wi-Fi.

Если вы пытаетесь сделать это в Windows и Java, это может немного помочь: Информация о Wi-Fi на Java

Если вы собираетесь сделать это в Windows (и на каком-то другом языке), вам нужно будет написать или найти библиотеку, которая взаимодействует с Windows Native Wifi API. Некоторые примеры для C #: Managed Wifi API и Как получить доступ к параметрам беспроводной сети с помощью собственного WiFi API.

person Venus    schedule 20.12.2009

Пробовали SkyHook?

Общедоступный SDK Skyhook позволяет разработчикам быстро и легко запускать свои приложения с поддержкой местоположения, используя только программную систему определения местоположения Wi-Fi Skyhook на платформе по своему выбору.

Весь сайт немного освещает конкретную информацию, хотя я не могу сказать, бесплатный он или коммерческий.

person skaffman    schedule 20.12.2009
comment
Кстати, Skyhook - это технология, которая используется в iPhone - это то, что позволило iPhone с предварительной поддержкой GPS по-прежнему иметь возможность геолокации намного лучше, чем метод триангуляции сотового телефона, используемый на других устройствах. - person delfuego; 21.12.2009