Stockholm traveling autosuggestion

Permalänk
Medlem

Stockholm traveling autosuggestion

Tjenare!

Ni som har androidtelefoner och använder appen "Stockholm traveling" har säkert stött på ett irriterande problem som jag märker av ibland. När man matar in vart man vill åka eller varifrån man åker hämtas förslag då man matar in nya bokstäver, detta är en bra funktion men den skulle kunna tunas lite grand. Jag vet inte exakt hur förslagen tas fram, men jag antar att de söks efter i någon databas, och att databasen inte ligger lokalt på mobilen. Kanske något liknande (SQL):

SELECT name FROM hållplatser WHERE name LIKE '%inmatadebokstäverna%'

Problemet som uppstår är när man har en skitmobil, till exempel Samsung galaxy S4 att kommunikationen buggar (kan vara något på serversidan också såklart). Dvs, ibland får man inte upp förslag och ibland tar det lång tid. En vanligt förekommande sak är att man hinner skriva in tex 2 st bokstäver, då börjar appen söka efter förslag. Under tiden man skriver in fler bokstäver hinner förslagen läggas fram, och man ser några bra förslag. Här börjar också nya förslag letas upp. Det som händer då är att man trycker på det bra förslaget, till exempel tre rader ner. Under tiden man rör fingret från tangenterna, hinner nya förslag letas upp och läggas fram. Detta sker givetvis i precis det ögonblick när man ska trycka på det förlaget man ville ha, och så får man fram fel skitförslag.

Det finns en klar nackdel med att ha hållplatsdatabasen på mobilen. Uppdaterar man inte appen så uppdateras inte hållplatser, och det kan suga lite. Jag vill se lite hur ni tänker kring detta, andra för och nackdelar? Har jag rätt i mitt antagande om hur förslagen tas fram?

Vidare funderar jag över: Säg att jag inte har tillgång till en databas med bra sökfunktioner, utan istället har förslagen i en vektor. Vilka metoder finns för att söka igenom den för förslag, om man använder sig av java eller javascript? Finns det några färdiga funktioner för detta?

Permalänk
Medlem

Kan inte uttala med specifikt om "Stockholm Traveling", men exempelvis Västtrafiks API söker även på adresser när man skriver. Detta gör ju datamängden lite större att söka igenom och därmed blir det ju lite bökigare att ladda ner hela databasen till enheten. (Tänk "alla hållplats-namn, väg-namn och 'points of interest' i hela Västra Götaland".)
Deras API tillåter dock att man hämtar ner en lista över alla hållplatser tillsammans med deras koordinater o.dyl, så det finns absolut utrymme för att göra en lokal sökning om man bara är intresserad av hållplatserna.
Angående att uppdatera databasen, så kan man säkert lägga in någon bakgrundstjänst som, någon gång i veckan, först kollar om man är på WiFi och sedan laddar ner senaste versionen/uppdateringarna. (Ex: Man kan skicka in datum för senaste hämtning till ICAs API för att hämta butiker som ändrat information efter det datumet man anger.)

I fallet javascript och lokal vektor med hållplatser, så kan man nog kombinera dessa för att få fram det man söker:
Array.prototype.filter()
String.prototype.indexOf()
String.prototype.toLowerCase()

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Avstängd
Skrivet av trexake:

Problemet som uppstår är när man har en skitmobil, till exempel Samsung galaxy S4 att kommunikationen buggar (kan vara något på serversidan också såklart).

Vad är det som är skit med S4?