Scribble Maps Blog
← All posts

Scribble Maps Blog

Kehittäjät: Google API -saltojen säästäminen automaattisella täydennyksellä

Googlen uusi API-hinnoittelu tuo mukanaan paljon voittajia. Jos sovelluksesi kuitenkin käyttää koko karttatoimintojen valikoimaa ja sinulla on paljon käyttäjiä, saatat huomata saldosi hupenevan nopeasti. Kaksi toimintoa, jotka kuluttavat suoraan saldoasi eivätkä kuulu päivittäisen ilmaisen kiintiön piiriin, ovat automaattinen täydennys (autocomplete) ja paikkahaku.

Jos käytät Google-lisenssiäsi Scribble Maps API:n kanssa, teemme osan näistä optimoinneista automaattisesti, mutta jos rakennat omaa mukautettua toteutustasi suoraan Google Maps API:n päälle, voit tehdä yksinkertaisen päivityksen säästääksesi automaattisen täydennyksen krediittejä.

Standardi automaattinen täydennystoiminto lähettää pyynnön jokaisesta syötteen muutoksesta. Käytettyjen krediittien määrää on mahdollista vähentää merkittävästi asettamalla viive (timeout) syötteen muuttuessa.

Tässä on hyvin yksinkertainen esimerkki.

 var acTimeOut;  
 textSearchInput.onkeyup = function() {  
 clearTimeout(acTimeout);  
 acTimeout = setTimeout(function() {  
 //laita automaattisen täydennyksen kutsut tähän  
 }, 250);  
 }  

Joten joka kerta kun käyttäjä alkaa kirjoittaa syötteeseen, automaattinen täydennys ei käynnisty ennen kuin tapahtuu pieni viive. 250 ms:n viivettä voidaan lyhentää, jotta automaattinen täydennys käynnistyy useammin. Jos käyttäjä kirjoittaa nopeasti "Toronto", suoritetaan vain yksi automaattisen täydennyksen kutsu kahdeksan sijaan, kun käyttäjä pitää tauon.

Olemme todenneet, että ajastettu viive toimii parhaiten. Tärkeä seikka tässä on varmistaa, että käyttöliittymä osoittaa haun olevan käynnissä kirjoituksen aikana. Meidän tapauksessamme käytämme animoitua latauskuvaketta (spinneriä). Tällä tavoin, jos käyttäjä kirjoittaa nopeasti eikä näe tuloksia, animoitu latauskuvake antaa hänelle tarpeeksi aikaa odottaa tulosten ilmestymistä.

On huomattava, että tämän toteuttaminen on heidän nykyisten käyttöehtojensa mukaista. Tämä menetelmä käytännössä vain rajoittaa käyttäjältä lähtevien automaattisen täydennyksen kutsujen määrää.
← All posts