Përcaktimi i vendndodhjes pa GPS: si funksionon Yandex.Locator. Pse pa GPS dhe si tjetër

Tani gjithnjë e më shumë aplikacione celulare po bëhen gjeo-varur. Disa thjesht nuk kanë kuptim pa e ditur vendndodhjen e përdoruesit, të tjerët bëhen më të përshtatshëm me të. Këto janë të ashtuquajturat Shërbime të Bazuara në Vendndodhje (LBS): navigatorë, katrorë, instagram me foto të gjeoetiketuara dhe madje edhe aplikacione rikujtuese që aktivizohen pranë një vendi të caktuar, për shembull, pranë një zyre ose një dyqani.

Për shërbimet dhe aplikacionet Yandex, ne kemi krijuar zbatimin tonë të metodës së përcaktimit të vendndodhjes pa GPS - Yandex.Locator. Ai kursen kohën e përdoruesit dhe i bën aplikacionet tona pak më të zgjuara. Në Navigator dhe Maps, eliminon nevojën për të hyrë në pikën fillestare të itinerarit, edhe nëse jeni në një parking të mbuluar. Dhe kur zgjidhni një film në Posterin e Filmit ose një produkt në Tregun celular, ju ndihmon të tregoni menjëherë se ku mund t'i gjeni në zonën tuaj të qytetit. Dhe, sigurisht, kur kërkoni kafene dhe ATM - ju lejon të tregoni më të afërtat, edhe kur jeni në metro.

Ne e hapëm teknologjinë shumë kohë më parë si një API falas. Sot duam t'ju tregojmë se si funksionon.

Pse pa GPS dhe si tjetër

Sistemet e navigimit satelitor (GNSS), në rastin tonë GPS dhe GLONASS, janë metoda më e saktë e gjeopërcaktimit sot. Modulet përkatëse gjenden pothuajse në të gjithë telefonat inteligjentë modernë. Por jo gjithmonë dhe jo kudo ai mund të zgjidhë problemet e LBS.

Së pari, kërkimi i satelitëve ndonjëherë zgjat disa minuta, dhe ka situata në të cilat shpejtësia e përcaktimit është e rëndësishme edhe me një humbje të saktësisë. Për shembull, kur duhet të ndërtoni një rrugë paraprake në navigator ose të regjistroheni. Së dyti, satelitët zakonisht nuk janë "të dukshëm" brenda ose nën tokë. Së treti, modulet GPS nuk gjenden në çdo telefon celular apo tablet dhe pothuajse mungojnë në laptopë. Pra LBS ka nevojë për alternativa.

Dhe, sigurisht, ka alternativa - ju mund të përcaktoni vendndodhjen nga kullat më të afërta GSM, rrjetet Wi-Fi dhe madje edhe nga adresa IP. Saktësia e secilës prej këtyre metodave është shumë më e keqe se ajo e GPS. Por nëse i kombinoni, do të japin një cilësi të pranueshme së bashku. Në të njëjtën kohë, disa disavantazhe të njërës neutralizohen nga aftësitë e tjetrit. Kullat GSM janë pothuajse kudo, por rrjetet Wi-Fi nuk janë. Në të njëjtën kohë, saktësia e zbulimit është më e mirë në lidhje me Wi-Fi. Prandaj, metoda e kombinuar është më e mirë për sa i përket plotësisë dhe saktësisë sesa secila veç e veç. Më pak i njohur është fakti që dy rutera në pjesë të ndryshme të një qyteti mund të kenë të njëjtën adresë MAC. Kombinimi i GSM dhe Wi-Fi zgjidh përplasje të tilla. Këta ruter, ka shumë të ngjarë, do të kenë kulla me identifikues të ndryshëm afër - në fund të fundit, probabiliteti i një ndeshjeje brenda një blloku është shumë më i vogël sesa në bazë të qytetit.

Ekzistojnë disa zbatime të një metode të tillë të kombinuar gjeopërcaktimi në botë. Dhe duket se pyetja e parë me të cilën u përballën të gjithë zhvilluesit ishte - ku të merrni informacione për vendndodhjen e rrjeteve Wi-Fi dhe kullave celulare?

Baza e vendndodhjeve të rrjetit

Në dilemën blej ose ndërto, ne përfundimisht zgjodhëm këtë të fundit. Arsyeja kryesore është se me të dhënat dhe algoritmet tuaja është shumë më e lehtë të kontrolloni cilësinë e rezultatit. Përdoruesit e celularëve Yandex.Maps na ndihmuan në mbledhjen e informacionit.

Kur filluam të zhvillonim Locator, tashmë kishte qindra mijëra njerëz në rrugët e qyteteve me Yandex.Maps të aktivizuar në telefonat e tyre. Me pëlqimin e përdoruesit, aplikacioni vazhdimisht transmeton koordinatat e tij GPS - Yandex.Traffic është ndërtuar në bazë të këtij informacioni. Ne menduam se së bashku me këtë, aplikacioni mund të shënojë se cili stacion bazë i servisohet telefonit në këto koordinata, cilat rrjete Wi-Fi janë të dukshme (ndërsa, natyrisht, pa u lidhur me vetë rrjetet - në mënyrë që të mos krijohen rreziqe për privatësinë) .

Një person nuk ka nevojë të bëjë asgjë për të marrë pjesë në një grumbullim të tillë - thjesht përdorni aplikacionin. Ashtu si me koordinatat, të dhënat në rrjetet përreth Wi-Fi dhe stacionet GSM janë të depersonalizuara. Ata praktikisht nuk "peshojnë" asgjë, dhe bateria nga transmetimi i tyre, në përputhje me rrethanat, nuk thahet më shpejt.

Kështu, përdoruesit filluan të ndihmojnë njëri-tjetrin:


Disa, me një marrës GPS në telefonin e tyre, zbulojnë vendndodhjen e saktë të rrjeteve dhe transmetojnë informacionin në Yandex. Të tjerët, të cilët nuk kanë module GPS, dërgojnë një listë të rrjeteve që shohin në këtë moment dhe marrin si përgjigje vendndodhjen e tyre të përafërt në hartë.

Baza e të dhënave është mbledhur dhe përditësohet rregullisht. Dhe këtu përballemi me problemin tjetër.

Rrjetet "lëvizëse".

Përvoja tregon se identifikuesit e kullave celulare po ndryshojnë vazhdimisht - numri që ishte në qendër të qytetit dje mund të jetë në periferi nesër. Ruterat Wi-Fi gjithashtu mund të lëvizin - së bashku me pronarët e tyre. Dhe rezulton se me çdo lëvizje, ju duhet të zhvlerësoni një pjesë të dukshme të të dhënave.

Kështu arritëm të zgjidhim problemet me lëvizjen e kullave dhe ruterave në të njëjtën kohë. Përdoruesi merr një kërkesë për të përcaktuar vendndodhjen së bashku me të dhënat se cilat rrjete sheh. Nëse lista e rrjeteve përmban një që është parë në pjesë të ndryshme të qytetit, algoritmi merr parasysh sa sinjale prej tij janë grumbulluar në çdo rreth dhe moshën e këtij të fundit. Ne e quajmë "re" çdo grumbullim të dendur sinjalesh nga një rrjet Wi-Fi ose kullë celulare. Sa më shumë sinjale të ketë në re dhe sa më të freskëta të jenë, aq më i besueshëm është. Përgjigja do të jetë përkatësisht më e madhja dhe më e freskëta. Dhe një re në të cilën nuk ka sinjale për më shumë se një muaj konsiderohet e vjetëruar - edhe nëse një re më e fundit nuk është shfaqur për këtë rrjet në një zonë tjetër.

Rrezja e resë

Meqenëse pozicioni përcaktohet afërsisht, nuk mund të tregoni një pikë - duhet të vizatoni një rreth (në fund të fundit, sinjali i radios shpërndahet në mënyrë të barabartë në të gjitha drejtimet në mungesë të ndërhyrjes). Edhe pse, nëse shikoni pamjen aktuale të sinjaleve, më së shpeshti është një elips. Në fund të fundit, shoferët përdorin kartat celulare mbi të gjitha. Gjurmët e tyre GPS mbeten në rrugë dhe praktikisht nuk merret asnjë sinjal nga oborret dhe, për më tepër, nga ndërtesat.

Që përgjigja të jetë sa më e saktë, rrezja e rrethit duhet të jetë sa më e vogël. Nëse thjesht vizatoni një rreth rreth të gjitha pikave të sinjalit të një rrjeti të caktuar, rrezja do të jetë shumë e madhe. Mate ndihmoi për ta zvogëluar atë. statistikat. Dendësia e sinjalit i nënshtrohet një shpërndarjeje normale, domethënë zbatohet rregulli tre sigma. 99,7% e pikave bien në afërsi të kësaj rreze.

Ne vendosëm të shkojmë më tej dhe zgjodhëm eksperimentalisht një faktor sigma që minimizonte rrezen sa më shumë që të ishte e mundur, por ruante saktësinë e pranueshme. Kjo ishte e suksesshme sepse në shumicën e rasteve përdoruesi sheh disa rrjete. Kjo do të thotë, zonat e "hapura" duke ulur koeficientin ka shumë të ngjarë të mbivendosen nga retë e tjera.

Sinjale jo reje

Fatkeqësisht, jo të gjitha sinjalet GPS nga përdoruesit mund të përpilohen lehtësisht në retë. Doli që nëse mbivendosni në hartë të gjitha sinjalet e një rrjeti të vetëm, përveç "elipseve", ai do të përmbajë pika dhe linja. Këto janë, në përputhje me rrethanat, sinjale të vetme që janë shumë larg nga akumulimi i sinjaleve të të njëjtit rrjet, dhe gjurmë shumë të gjata GPS (d.m.th., zinxhirë sinjalesh GPS).

"I vetmuar" shfaqen, për shembull, kur një person lëviz në metro. Telefoni humbet kontaktin me një celular në një stacion dhe kur del në një tjetër, ai ende mendon se është duke u shërbyer nga ajo qelizë. Locator filtron sinjale të tilla. Përveç kësaj, ne kemi vendosur një prag minimal për retë në mënyrë që të mos mbështetemi në grupe sinjalesh shumë të pakta.

Gjurmët e gjata GPS shfaqen, për shembull, kur një person drejton një makinë nëpër qytet. Telefoni "zvarrit" identifikuesin e kullës që në fillim të rrugës dhe raporton se gjoja e sheh atë gjatë gjithë rrugës. Dihet që stacionet bazë kanë një rreze të kufizuar, kështu që Locator gjithashtu filtron gjurmë të tilla GPS. Gjurmët, gjatësia e të cilave përshtatet brenda rrezes së kullës, mbeten. Zakonisht shihen në zona ku ka pak të dhëna. Atje ato bëhen një zinxhir resh të vogla.

Ne i konsiderojmë "zhurmë" sinjalet e vetmuara, retë e vogla dhe gjurmët e gjata. Kur përdoruesi sheh një rrjet të vetëm për të cilin ne njohim vetëm sinjale të tilla, ai merr një përgjigje se vendndodhja nuk mund të përcaktohet. Ne e konsiderojmë këtë si më të saktë sesa të japim një rezultat të pasaktë me vetëdije, sipas vlerësimeve tona.

Kur të dhënat ishin të pakta, kishte një vështirësi tjetër me kombinimin e të gjitha sinjaleve në një re. Ndodhi që sinjalet nga kulla nga një qytet të vinin edhe nga një tjetër. Na ndihmoi prania në identifikuesit e rrjeteve GSM të kodit të zonës së vendndodhjes - LAC (Location Area Code). Meqenëse kullat me të njëjtin kod duhet të vendoseshin afër sipas standardit, Locator filloi t'u jepte një peshë të nënvlerësuar reve që ishin "në qytetin e gabuar" (dmth. midis reve me një LAC të ndryshëm).

Përmirësimi i saktësisë së përkufizimit ...

... mbi rrjetet GSM
Njëherë e një kohë, aplikacionet kishin akses vetëm në informacione për një stacion bazë, megjithëse telefoni më shpesh sheh disa. Pasi u shfaq platforma Android, aplikacionet mundën të mësonin t'i shihnin të gjitha (përveç lidhjes në standardin 3G, i cili lejon të njihet vetëm një kullë celulare). Vendndodhja filloi të përcaktohej më saktë - jo më nga një re, por nga agregati i disave. Doli që për shumë re, mund të përdorni të njëjtën qasje si për një. Rrezja llogaritet nga devijimi rrënjë-mesatar-katror i sinjaleve të përfshira në grupin e reve, dhe qendra llogaritet nga mesatarja e koordinatave të tyre.
... përmes rrjeteve Wi-Fi
Kur një smartphone është brenda rrezes së disa rrjeteve Wi-Fi, ai mund të raportojë jo vetëm listën e tyre, por edhe fuqinë e sinjalit të secilit. Ne përdorëm njohuritë për këtë fuqi për të përmirësuar qendrën e rrethit në të cilin ndodhet përdoruesi. Ne filluam të pezullojmë burimet imagjinare në qendrat e reve të vëzhguara - sa më i fortë të jetë sinjali, aq më i ngushtë. Dhe skajet e tyre të lira janë për t'u lidhur. Pika në të cilën balancohen këto burime është qendra e rafinuar.

Cilësia që rezulton

Së pari, disa fjalë se si e vlerësojmë cilësinë e zgjidhjes sonë. Siç është përmendur tashmë, nga përdoruesit që kanë një modul GPS në pajisjet e tyre, Latitude merr si koordinatat ashtu edhe një listë të rrjeteve që shohin pajisjet. Për të vlerësuar cilësinë, ai fillimisht përcakton vendndodhjen e përafërt, duke u fokusuar vetëm në këto rrjete. Dhe më pas kontrollon nëse koordinatat e vërteta nga përdoruesi bien brenda rrethit të sugjeruar nga Locator.

Duke përdorur këtë teknikë, ne morëm numrat e mëposhtëm:

  • për 83% të kërkesave në ditë, vendndodhja u përcaktua saktë - koordinatat GPS të pajisjes ranë në zonën e emërtuar nga Locator
  • 14% e sinjaleve - me një gabim:
    • 7% - gabim më pak se 100 metra
    • 5.6% - nga 100 metra në disa kilometra
    • 1.4% - Lokatori është i gabuar sipas qytetit
  • 3% e mbetur e kërkesave marrin një përgjigje "Vendndodhja nuk u gjet"


Mund të merrni cilësi më të mirë? Po. Avantazhi i metodës është se me një pjekuri të caktuar të algoritmeve, mjafton vetëm të mblidhen më shumë të dhëna për të përcaktuar vendndodhjen më saktë. Dhe kjo është mjaft e lehtë, sepse numri i rrjeteve Wi-Fi po rritet dhe numri i përdoruesve të aplikacioneve tona po rritet.

Por ka kufizime teknologjike:

  • nëse telefoni raporton vetëm për një kullë GSM - rrezja minimale do të jetë disa qindra metra në qytet dhe disa kilometra jashtë qytetit
  • nëse telefoni sheh disa kulla, qendra mund të përcaktohet më saktë, por rrezja vështirë se mund të zvogëlohet
  • nëse një rrjet Wi-Fi është i dukshëm - rrezja minimale do të jetë 10 metra

Sasia e llogaritjes

Për t'iu përgjigjur shpejt një përdoruesi, duhet të përgatisni të gjithë përgjigjen paraprakisht, ose të paktën një pjesë të konsiderueshme. Çdo natë, një grup i bazuar në sistemin tonë informatik të shpërndarë YAMR grumbullon sinjalet e marra deri dje, duke marrë "re" gati për përgjigje. Në momentin e kërkesës, Locator duhet vetëm t'i kombinojë ato në mënyrë korrekte. Pra, terabajtë "sinjale të papërpunuara" u kompresuan në 1,5-2 GB përgjigje të gatshme, të cilat mund të futen lehtësisht në memorie. Dhe përgatitja e përgjigjes pothuajse gjithmonë përshtatet në 1 ms, dhe çdo server në grup mund të përballojë 10 mijë RPS.

Dhe në mënyrë që kohëzgjatja e llogaritjes ditore të mos rritet në mënyrë lineare me rritjen e historisë së sinjaleve GPS, ne kemi arritur "aditivitetin" e reve. Tani mjafton të ruash vetëm disa tregues për secilën re dhe nuk ka nevojë të ripërpunosh të gjithë historinë e vjetër çdo ditë.

Përgatitja e një përgjigjeje më të plotë rezulton të jetë e paefektshme. Nëse grumbulloni çdo kombinim rrjetesh në një re të veçantë, ju merrni një shpërthim kombinues. Vëllimi i përgjigjeve të gatshme rritet me disa rend të madhësisë dhe nëse rrjetet mbivendosen, nevojiten edhe më shumë llogaritje për të përgatitur përgjigjen.

Analoge

Shërbimet e vendndodhjes pa GPS, siç kemi thënë tashmë, nuk ofrohen vetëm nga Yandex. Zhvilluesit mund të kontaktojnë një ofrues komercial (si Altergeo në Rusi dhe Skyhook Wireless në botë), ose të përdorin API-në e një platforme celulare ose shfletues.

Në përgjithësi, një bazë të dhënash e tillë mund të mblidhet në tre mënyra:

  • shkoni nëpër qytetet me interes me makinë, skanoni rrjetet dhe më pas vizitoni periodikisht përsëri për të përditësuar bazën e të dhënave
  • krijoni një aplikacion masiv celular (për shembull, Yandex.Maps)
  • krijoni një platformë celulare (si iOS ose Android)
Por vetëm zhvilluesi i aplikacionit gjeo-varur duhet të zgjedhë midis zgjidhjeve të ndryshme, dhe përdoruesi "jeton" me këtë zgjedhje. Në mungesë të një metode të unifikuar krahasimi, duhet t'i kushtohet vëmendje saktësisë së përcaktimit (rrezja e "tolerancës" dhe përqindja e gabimeve) në rajonet e interesit. Shto etiketa

Koordinatat gjeografike janë informacioni më i vlefshëm që një zhvillues ueb mund të marrë nga vizitorët e faqes. Duke pasur një zgjuarsi të shpejtë dhe duke ditur disa truke, mund të mësoni shumë për një person sipas vendndodhjes së tij: adresën, cilat institucione janë afër, fotografitë e bëra në zonën e tij, për çfarë ankohen fqinjët dhe thellësia e lumit më të afërt.

PARALAJMËRIM

I gjithë informacioni jepet vetëm për qëllime informative. As redaksia dhe as autori nuk janë përgjegjës për ndonjë dëm të mundshëm të shkaktuar nga materialet e këtij artikulli.

HYRJE

Nëse ende nuk i mbledhni të dhënat e vendndodhjes nga përdoruesit tuaj, atëherë thjesht nuk e keni lexuar ende këtë artikull dhe nuk dini si ta përdorni informacionin në avantazhin tuaj. Le t'i hedhim një vështrim disa rasteve të përdorimit për të treguar sesi gjeodatat mund të vijnë në ndihmë dhe më pas të kalojmë në praktikë.

Rasti i përdorimit 1. "Do t'ju kuptoj me IP"

Le të themi se keni një troll në blogun tuaj që lë rregullisht komente të vrazhda. Nëse mbledhni informacione për vizitorët në Yandex.Locator, atëherë mund të zbuloni lehtësisht se ky dikush është në skajin lindor të rrugës Lenin, në të cilën jeton një djalë i pakëndshëm nga universiteti juaj. Dhe nëse jeni me fat, duke bërë një kërkesë në Vkontakte API, do të gjeni foton e tij të fundit.

Rasti i përdorimit 2. Gjeomarketing

Yandex.Direct ka përdorur gjeo-shënjestrimin e synuar për reklamat e tij për një kohë të gjatë. Ndërgjegjja injoron njoftimin "Një rrjet piceri në Moskë". Dhe është pothuajse e pamundur të kalosh pranë lidhjes "Rruga Pizza Rochdelskaya, shtëpia 14" (përtej rrugës nga ju).
Ju mund të përdorni të dhënat gjeografike për të promovuar produktet dhe shërbimet. Nëse një person aktualisht po ndjen efektin e presionit të ulët atmosferik, atëherë ekziston mundësia që ai të dëshirojë të blejë pilula për të rritur vitalitetin.

Përdorimi 3. Funksionaliteti argëtues

Ka një hapësirë ​​​​të madhe për kreativitet. Ne vendosëm në faqe temën "natë" të dizajnit pasi dielli perëndon për përdoruesit. Ne i tregojmë selfiet më të fundit të vajzave të marra 10 km larg. Nga klima dhe thellësia e trupave ujorë, ne përcaktojmë se çfarë lloj peshku gjendet në zonë. Ka shumë opsione.

Përdorimi 4. Hulumtimi "shkencor" i audiencës

Rezultatet e një sondazhi anonim online mund të jenë dukshëm më të dobishme nëse, përveç përgjigjeve, shënohet edhe vendndodhja gjeografike e të anketuarve.

Interesante? Pastaj shkoni përpara.

Marrja e koordinatave

Të dhënat GPS mund të merren duke përdorur JavaScript dhe HTML5 Geolocation API. Por mbani në mend: vendndodhjen e saktë të përdoruesit mund ta zbuloni vetëm me pëlqimin e tij. Ai duhet ta shprehë atë duke iu përgjigjur po në dritaren kërcyese, nëse do të lejojë faqen aktuale të zbulojë vendndodhjen e saj.

Shembull i kodit në JS amtare:

// Vendos adresën në variabël

për të shfaqur tekstin var postText = document.getElementById ("positionText"); funksioni getLocation () (nëse (navigator.geolocation) (// Nëse përdoruesi ka lejuar, përcaktoni vendndodhjen e tij dhe përpunoni vlerën që rezulton duke përdorur funksionin ShowPosition navigator.geolocation.getCurrentPosition (showPosition);) tjetër (// Nëse jo, shfaq një mesazh gabimi postText.innerHTML = "Ky shfletues nuk mund të përcaktojë vendndodhjen";)) funksioni showPosition (pozicioni) (// Shfaq gjerësinë dhe gjatësinë gjeografike në faqen postText.innerHTML = "Gjerësia gjeografike:" + position.coords.latitude + "
Gjatësia gjeografike: "+ pozicioni.koordet.gjatësia;)

Yandex.Locator

Nëse përdoruesi nuk dëshiron të ndajë vullnetarisht informacionin GPS, atëherë gjithçka nuk ka humbur. Ekziston një mjet i lezetshëm Yandex.Locator. Saktësia mesatare e përcaktimit është 300 m. Llogarit se ku ndodhet personi, sipas informacionit të mëposhtëm:

  • sinjalet e rrjetit celular;
  • Sinjalet e rrjetit të aksesit Wi-Fi;
  • Adresa IP e pajisjes celulare.

Është shumë më e vështirë për t'u implementuar në projekt sesa API-ja e Gjeolokimit HTML5. Para se të dërgoni një kërkesë në Yandex.Locator API, faqja ose aplikacioni celular duhet të marrë një çelës aksesi dhe të zbulojë shumë detaje rreth përdoruesit. Nëse një vizitor është në internet përmes një lidhjeje celulare, atëherë duhet të dini ID-në e celularit dhe fuqinë e sinjalit, nëse përmes Wi-Fi - fuqinë e sinjalit dhe adresën MAC të pikës së hyrjes.

Referojuni udhëzuesit të zhvilluesit për udhëzime të sakta.

Të dhënat e fotografisë Exif

Ju gjithashtu mund të gjeni koordinatat GPS në meta të dhënat e imazheve të marra me një aparat fotografik dixhital. Informacioni rreth fotove mund të lexohet pa pëlqimin e përdoruesit. Ju vetëm duhet ta bëni atë t'i shkarkojë ato. Pastaj biblioteka exif-js ose mjetet e serverit për leximin e të dhënave exif vjen në shpëtim:

  • PHP ka një funksion të integruar read_exif_data ();
  • ka bibliotekë exif për Ruby;
  • Python ka Paketën ExifRead 2.0;
  • për C ++ - easyexif.

Baza GeoIP

Mund të përpiqeni të gjeni adresën IP të përdoruesit në bazën e të dhënave GeoIP, por kjo është një palmisë e pastër. I shtrenjtë dhe i vjetëruar. Në përvojën time, kjo bazë të dhënash është plot me pasaktësi dhe nuk mund t'i besohet. Dhe përqindja e atyre që përdorin VPN është mjaft domethënëse.

Ne hartojmë një dosje

Pasi kemi marrë në dorë koordinatat gjeografike, le të fillojmë të mbledhim informacione. Për çdo artikull, ne do të bëjmë një kërkesë me parametra në një nga API-të dhe do të analizojmë përgjigjen e kthyer XML / JSON.

Së pari, ne zbulojmë adresën e përdoruesit me saktësinë e rrugës.

Gjeni adresën e përdoruesit

Kjo mund të bëhet nga Yandex.Geocoder (mund të punoni me të pa autorizim paraprak OAuth).

Sintaksa e pyetjes:

Http://geocode-maps.yandex.ru/1.x/?geocode=36.3630,56.0000

Është e thjeshtë. Kërkesës i kalojnë dy parametra: gjerësia (56.0000) dhe gjatësia (36.3630).

Serveri do të kthejë një përgjigje në formatin XML (shih pamjen e ekranit). Ne jemi të interesuar në fushat e mëposhtme:

  • Adresa Details-> Country-> AdressLine - një linjë teksti me adresën e plotë të përdoruesit;
  • Të dhënat e adresës-> Shteti-> Emri i vendit - shteti;
  • Adresa Details-> Administrative Area-> Administrative AreaEmri - rajoni;
  • Adresa Details-> SubAdministrative Area-> SubAdministrativeAreaEmri - zona;
  • Detajet e adresës-> Lokaliteti-> Emri i lokalitetit - lokaliteti;
  • Detajet e adresës-> ThoroughFare-> ThoroughFareName - rrugë.

Yandex.Geocoder nuk zbulon adresën me numrin e shtëpisë. Por nëse e tendosni pak trurin dhe mbani mend kurrikulën e shkollës, atëherë mund ta llogarisni atë. Në një shkallë të gjerësisë gjeografike 111 km 111 m. Me gjatësinë gjeografike, gjithçka është pak më e ndërlikuar. Në fund të fundit, diametri i Tokës ndryshon me gjerësinë gjeografike. Prandaj, gjatësia gjeografike llogaritet duke përdorur formulën e mëposhtme (6371 është rrezja e Tokës):

6371 * (Math :: PI / 180) * cos (gjerësia gjeografike * Math :: PI / 180)

Si ndihmon kjo njohuri për të llogaritur adresën e saktë të përdoruesit? Kështu:

  1. Gjetja e rrugës duke përdorur Yandex.Geocoder.
  2. Ne dërgojmë një kërkesë për të marrë koordinatat e sakta gjeografike të një shtëpie në këtë rrugë:
    http://geocode-maps.yandex.ru/1.x/?geocode=perm, rruga Yablochkova, 2
  3. Ne lexojmë vlerën nga përgjigja e serverit.
  4. Duke ditur gjatësinë e shkallës së gjerësisë dhe gjatësisë gjeografike, ne llogarisim distancën nga pika e dëshiruar në këtë shtëpi.
  5. Ne hapim Yandex.Maps dhe përdorim një vizore për të kuptuar se cila shtëpi ka koordinatat gjeografike të përdoruesit.

Të gjithë përdoruesit nuk mund të zbulohen në këtë mënyrë, por disa janë veçanërisht të nevojshëm. Gjëja kryesore është të mos bëni një gabim në llogaritjet.

Pamja e rrugës në Google

Koordinatat mund të gjenden në Google Maps dhe të aktivizoni pamjen e rrugës. Është qesharake të shikosh shtëpinë ose zyrën e një personi që kritikon hapur fotot e një vilë verore të sapo rinovuar në blogun tënd.

Foto përreth

Tani le të kërkojmë fotot e bëra pranë vendit X. Si bëhet kjo, le të analizojmë duke përdorur shembullin e VKontakte API:

Https://api.vk.com/method/photos.search.xml?lat=38.600000&long=35&count=100&radius=500

  • lat - gjerësi;
  • gjatë - gjatësi;
  • numërimi - numri i fotove të kthyera nga kërkesa;
  • radius - rrezja e rrethit rreth pikës së caktuar në të cilën do të bëhen fotot.

Këtu janë fushat e përgjigjeve që na interesojnë:

  • src, src_big - lidhje me fotot;
  • krijuar - data kur u krijua fotografia në unixtimestamp;
  • pronar_id - ID e pronarit të fotografisë.

Duke ditur ID-në e pronarit, mund të shkoni në faqen e tij ose të mbledhni informacion duke përdorur të njëjtin API VK:

Https://api.vk.com/method/getProfiles.xml?uids=111111&fields=last_name,first_name, seksi, mosha

  • uids - ID-të e pronarit të ndara me presje;
  • fushat - fushat që duam të marrim në përgjigje.

Lista e plotë e fushave

Yandex njoftoi nisjen e ndërfaqes së programit (API) të shërbimit të tij të gjeolokacionit Yandex.Locator. API u bë i disponueshëm për zhvilluesit e palëve të treta në modalitetin e testimit më 25 shkurt 2011. Projekti mund të dalë nga faza e testimit "për disa muaj".

Sipas Yandex, API lejon përcaktimin e vendndodhjes së telefonave celularë ose laptopëve që nuk kanë marrësin e tyre GPS, gjë që hap mundësi për zhvilluesit të krijojnë shërbime dhe aplikacione bazuar në idenë e vendndodhjes. Si shembuj të programeve të tilla, Yandex citon shtimin e një etiketimi gjeografik në fotot ose mesazhet e publikuara në rrjetet sociale ose në Twitter.

Puna e API-së gjeografike të Yandex, si zgjidhje të ngjashme, bazohet në përdorimin e të dhënave për vendndodhjen e stacioneve bazë celulare aty pranë dhe pikave të hyrjes Wi-Fi.

Mjeti, sipas Oleg Gerasimov, kreu i departamentit të zhvillimit të shërbimeve celulare të Yandex, përdoret tani në disa nga produktet e veta të motorit të kërkimit (në Yandex.Maps celular, Yandex celular dhe Yandex.Bar për Firefox dhe Internet Explorer). Projektet e palëve të treta të bazuara në API gjeografike të Yandex nuk ekzistojnë ende, megjithatë, kur të shfaqen, Yandex do të jetë në gjendje të shtojë njohuritë e tij për vendndodhjen e përdoruesve të Yandex.Maps një audiencë përdoruesish të aplikacioneve të palëve të treta.

Në marrëveshjen e përdoruesit, Yandex paralajmëron përdoruesit e API - zhvilluesit e aplikacioneve se "kushti për përdorimin e shërbimit në aplikacionet celulare është transmetimi i gjurmëve GPS (të dhënat mbi lëvizjet e përdoruesit)" në Yandex. Nëse një aplikacion bën më shumë se 1000 kërkesa në ditë, ky kusht bëhet përgjegjësi e zhvilluesit të tij.

Në Udhëzuesin e Zhvilluesit për Locator, Yandex e quan pozicionimin e bazuar në sinjalet e pikës së nxehtë Wi-Fi, metoda më e saktë. Në këtë rast, pozicioni i pajisjes celulare mund të përcaktohet me një saktësi prej 150 metrash.

I njëjti dokument vëren se pozicionimi duke përdorur stacionet bazë të komunikimit celular varet nga dendësia e tyre: në qendër të qyteteve, ku ato ndodhen me densitet maksimal, mund të jetë 200-500 metra, në periferi - 1,5-2 mijë metra.

Është interesante se në vitin 2010, konkurrenti i Yandex, Google, u pa se ishte tepër i lirë në rrjetet Wi-Fi të njerëzve të tjerë, kur makinat e Google Street View u kapën duke mbledhur trafik nga rrjetet e hapura pa tel në disa vende në Azi, Amerikë dhe Evropë.

Oleg Gerasimov shpjegoi për CNews se, ndryshe nga Yandex, i cili përdor vetëm identifikuesin e pikës së hyrjes në veglat e tij gjeografike, Google skanoi të gjithë informacionin e transmetuar përmes rrjeteve të hapura, gjë që Yandex nuk do ta bëjë. Megjithëse shumica e rrjeteve private përdorin protokolle enkriptimi, megjithatë, identifikuesit e tyre transmetohen në një mënyrë të hapur, e cila është mjaft e mjaftueshme për qëllime pozicionimi, thotë Yandex.

Mjetet e pozicionimit, të ngjashme me Yandex, kanë konkurrentët e saj të drejtpërdrejtë Google dhe Mail.ru. Shërbimi Google Latitude (i lokalizuar në Rusi si "Google Locator") ka një API të hapur dhe përdoret gjerësisht në shërbime dhe aplikacione të ndryshme ueb.

Publikime të ngjashme