Skip to content
oturpe edited this page Dec 28, 2013 · 4 revisions

Sovellus lukee viivakoodeja ja palauttaa palvelimelta käyttäjien sinne lisäämää tietoa, jota ei välttämättä löydy pakkausmerkinnöistä.

Teknologia ja työkalut

Asiakas / mobiilisovellus

Tässä lista työkaluista ja kirjastoista, jotka ovat käytössä asiakaspuolen kehityksessä

  1. PhoneGap 3.0.0 mahdollistaa kehittämisen yhtäaikaa monelle alustalle
  2. PhoneGap Build mahdollistaa sovelluksen kokoamisen myös niille alustoille, joiden SDK:ita ei ole saatavilla tai vaikea asentaa.
  3. Android SDK. Tämä siksi, että Android on vertailualusta, jota vasten testataan.
  4. PhoneGap BarcodePlugin hoitaa viivakoodin lukemisen.
  5. Ripple Emulator, jotta sovellusta voi kokeilla ja debugata helposti tietokoneen selaimella.
  6. Riippuvuuksienhallinta toteutetaan Requiren avulla.
  7. Html-templaatit tehdään pure-moottoria käyttäen.
  8. Yksikkötestien ajamiseen Jasmine ja mockien tuomiseen Requiren kautta Squire.

Palvelinpuoli

  1. Käytössä Node.js
  2. Käytössä MongoDB
  3. Palvelin sijaitsee Nodejitsun pilvessä, mahdollisesti omalla palvelimella, jos sellainen saadaan jossain vaiheessa pystyyn.

Noilla pitäis päästä aika pitkälle. Mongo ei kuulemma toimi kunnolla yli 2 gigan tietokannoilla, mutta samaa olen kuullut kaikista SQL:istä. 2gb dataa on aika paljon, siihen mahtuu kaikki mahdolliset viivakoodi kombinaatiot ja datat niistä ainakin jos tuota perus viivakoodia ajattelee.

Viestiliikenne

Protokolla on kuvattu omalla sivullaan.

Jakelu

Puhelinsovellusta jaellaan Google Playn kautta Android-alustalle. Jakelu muille alustoille ratkaistaan sitä mukaa, kun niitä aletaan tukemaan, jos aletaan.

Palvelin palvelee ainakin alkuvaiheessa osoitteessa http://barcodeagent.nodejitsu.com.

Havaintoja

Sekalaisia havaintoja kehitystyön ajalta. Ehkä nämä on hyvä pitää mielessä.

  1. Ongelmia tulee, jos PhoneGap-projektin nimessä on välilyöntejä. Siispä BarcodeAgent eikä Barcode Agent.
  2. Ilmeisesti BarcodePlugin ja Ripple eivät sovi yhteen, joten varsinaista kuvan ottamista ei kokeilla sillä.
  3. On melko vaikeaa hahmottaa, milloin pitäisi puhua PhoneGapista ja milloin Cordovasta. Ilmeisesti oikea tapa olisi puhua pelkästä PhoneGapista, mutta esim. se että sen komentorivi ei tue plugin-käskyjä tekee tästä kovin hankalaa.